annotate src/alice/jungle/transaction/NetworkDefaultJungleTree.java @ 94:47e337fc4086

Implemented getLocalTreeEditor
author one
date Fri, 15 Nov 2013 12:36:36 +0900
parents 75cf01a430a6
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
31
190f6a3bdab2 rename some packages
one
parents: 12
diff changeset
1 package alice.jungle.transaction;
12
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
2
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
3 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTree;
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
4 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTreeEditor;
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
5 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.core.Node;
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
6 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeListWriter;
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
7 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.ChangeSet;
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
8 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.TreeEditor;
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode;
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
10 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.AtomicReservableReference;
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
11 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.TreeContext;
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
12
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
13 public class NetworkDefaultJungleTree<T extends TreeNode<T>> implements JungleTree {
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
14 private final AtomicReservableReference<TreeContext<T>> repository;
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
15 private final String uuid;
32
2f1879e0acec modified to have tree name
one
parents: 31
diff changeset
16 private final String treeName;
12
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
17 private final ChangeListWriter writer;
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
18 private final TreeEditor editor;
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
19
91
2c7b3f2b2ee1 Removed serverName field
one
parents: 67
diff changeset
20 public NetworkDefaultJungleTree(String _treeName, TreeContext<T> _tc,String _uuid,ChangeListWriter _writer,TreeEditor _editor)
12
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
21 {
32
2f1879e0acec modified to have tree name
one
parents: 31
diff changeset
22 treeName = _treeName;
12
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
23 repository = new AtomicReservableReference<TreeContext<T>>(_tc);
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
24 uuid = _uuid;
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
25 writer = _writer;
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
26 editor = _editor;
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
27 }
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
28
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
29 @Override
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
30 public JungleTreeEditor getTreeEditor()
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
31 {
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
32 TreeContext<T> tc = repository.get();
91
2c7b3f2b2ee1 Removed serverName field
one
parents: 67
diff changeset
33 NetworkTransactionManager<T> txManager = new NetworkTransactionManager<T>(treeName, writer,tc,repository,uuid);
12
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
34 T root = tc.getTreeNode();
92
e95faa202b4f Modified NetworkDefaultJungleTreeEditor class. Removed uuid and serverUpdater fields
one
parents: 91
diff changeset
35 return new NetworkDefaultJungleTreeEditor<T>(treeName, root,txManager,editor);
12
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
36 }
93
75cf01a430a6 Added LocalTreeEditor
one
parents: 92
diff changeset
37
12
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
38 @Override
94
47e337fc4086 Implemented getLocalTreeEditor
one
parents: 93
diff changeset
39 public JungleTreeEditor getLocalTreeEditor()
47e337fc4086 Implemented getLocalTreeEditor
one
parents: 93
diff changeset
40 {
47e337fc4086 Implemented getLocalTreeEditor
one
parents: 93
diff changeset
41 TreeContext<T> tc = repository.get();
47e337fc4086 Implemented getLocalTreeEditor
one
parents: 93
diff changeset
42 NetworkTransactionManager<T> txManager = new NetworkTransactionManager<T>(treeName, writer,tc,repository,uuid);
47e337fc4086 Implemented getLocalTreeEditor
one
parents: 93
diff changeset
43 T root = tc.getTreeNode();
47e337fc4086 Implemented getLocalTreeEditor
one
parents: 93
diff changeset
44 return NetworkDefaultJungleTreeEditor.NewLocalJungleTreeEditor(treeName,root,txManager, editor);
47e337fc4086 Implemented getLocalTreeEditor
one
parents: 93
diff changeset
45 }
47e337fc4086 Implemented getLocalTreeEditor
one
parents: 93
diff changeset
46
47e337fc4086 Implemented getLocalTreeEditor
one
parents: 93
diff changeset
47 @Override
12
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
48 public Node getRootNode()
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
49 {
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
50 TreeContext<T> tc = repository.get();
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
51 ChangeSet cs = tc.getChangeSet();
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
52 return cs.getRoot();
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
53 }
67
89e39301ccaa remove some warning
one
parents: 65
diff changeset
54
89e39301ccaa remove some warning
one
parents: 65
diff changeset
55
12
80680cfcfd3b add jungle/test/transaction, jungle/test/core/NetworkDefaultJungle
one
parents:
diff changeset
56 }