Mercurial > hg > Members > nobuyasu > jungle-network
comparison src/main/java/alice/jungle/core/NetworkDefaultJungle.java @ 193:89c15aa2bc6d
change transaction
author | tatsuki |
---|---|
date | Fri, 20 Mar 2015 16:18:42 +0900 |
parents | 5d0734fd859d |
children | fd4064e110bd |
comparison
equal
deleted
inserted
replaced
192:3202a2a427b1 | 193:89c15aa2bc6d |
---|---|
6 import alice.jungle.transaction.NetworkDefaultJungleTree; | 6 import alice.jungle.transaction.NetworkDefaultJungleTree; |
7 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.Jungle; | 7 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.Jungle; |
8 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTree; | 8 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTree; |
9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeList; | 9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeList; |
10 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.Journal; | 10 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.Journal; |
11 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.ChangeSet; | 11 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.TreeContext; |
12 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.TreeEditor; | 12 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.TreeEditor; |
13 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; | 13 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; |
14 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.TreeOperation; | 14 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.TreeOperation; |
15 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultChangeSet; | |
16 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeContext; | 15 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeContext; |
17 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode; | 16 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode; |
18 import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.Index; | |
19 import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.ParentIndex; | 17 import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.ParentIndex; |
18 import fj.Ord; | |
20 import fj.data.List; | 19 import fj.data.List; |
21 import fj.data.TreeMap; | 20 import fj.data.TreeMap; |
22 | 21 |
23 public class NetworkDefaultJungle implements Jungle { | 22 public class NetworkDefaultJungle implements Jungle { |
24 private Journal journal; | 23 private Journal journal; |
56 public String getTreeName() { | 55 public String getTreeName() { |
57 return name; | 56 return name; |
58 } | 57 } |
59 }; | 58 }; |
60 TreeNode root = new DefaultTreeNode(); | 59 TreeNode root = new DefaultTreeNode(); |
61 TreeMap<String, TreeMap<String, TreeMap<TreeNode, TreeNode>>> indexList = new Index().getIndex(); | 60 TreeMap<String, TreeMap<String, TreeMap<TreeNode, TreeNode>>> indexList = TreeMap.empty(Ord.stringOrd); |
62 TreeMap<TreeNode, TreeNode> parentIndex = new ParentIndex().getParentIndex(); | 61 TreeMap<TreeNode, TreeNode> parentIndex = new ParentIndex().getParentIndex(); |
63 ChangeSet set = new DefaultChangeSet(root, null, list, uuid, name, 0, indexList, parentIndex); | 62 TreeContext tc = new DefaultTreeContext(root, null, list, uuid, name, 0, indexList, parentIndex); |
64 DefaultTreeContext tc = new DefaultTreeContext(root, set); | |
65 JungleTree newTree = new NetworkDefaultJungleTree(name, tc, uuid, journal.getWriter(), editor); | 63 JungleTree newTree = new NetworkDefaultJungleTree(name, tc, uuid, journal.getWriter(), editor); |
66 if (trees.putIfAbsent(name, newTree) != null) { | 64 if (trees.putIfAbsent(name, newTree) != null) { |
67 return null; | 65 return null; |
68 } | 66 } |
69 return newTree; | 67 return newTree; |