annotate src/main/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/store/index/IndexManager.java @ 174:a2598139df64

test
author one
date Mon, 16 Feb 2015 12:08:47 +0900
parents 6615db346bf5
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
134
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
1 package jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
2
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
3
151
d9fbddf77bf6 add class Index
one
parents: 149
diff changeset
4
174
one
parents: 166
diff changeset
5 import fj.data.TreeMap;
134
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
6 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeList;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
7 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.ChangeSet;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
8 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.AtomicReservableReference;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
10 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultChangeSet;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
11 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeContext;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
12 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.TreeContext;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
13
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
14 public class IndexManager {
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
15
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
16 AtomicReservableReference<TreeContext>.Reservation reservation;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
17
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
18 public IndexManager(AtomicReservableReference<TreeContext>.Reservation reservation){
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
19 this.reservation = reservation;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
20 }
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
21
174
one
parents: 166
diff changeset
22 public void commit(TreeMap<String, TreeMap<String, TreeMap<TreeNode, TreeNode>>> index, ParentIndex parentIndex){
134
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
23 TreeContext tc = reservation.get();
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
24 ChangeSet cs = tc.getChangeSet();
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
25 TreeNode root = cs.getRoot();
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
26 ChangeSet prev = cs.prev();
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
27 ChangeList cl = cs.getChangeList();
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
28 String uuid = cs.uuid();
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
29 String treeName = cs.getTreeName();
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
30 long revision = cs.revision();
174
one
parents: 166
diff changeset
31 DefaultChangeSet newCs = new DefaultChangeSet(root, prev, cl, uuid, treeName, revision, index, parentIndex.getParentIndex());
134
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
32 DefaultTreeContext newTs = new DefaultTreeContext(root, newCs);
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
33 reservation.set(newTs);
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
34 }
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
35
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
36 }