annotate src/main/java/jp/ac/u_ryukyu/ie/cr/tatsuki/jungle/store/index/IndexManager.java @ 152:8a0aa8fc137c

Merge with a2c374a2686b82b0ad30f520412e191b84288fa9
author one
date Sat, 22 Nov 2014 15:25:09 +0900
parents d9fbddf77bf6 a2c374a2686b
children 20af7f25ef32
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
134
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
5 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.persistent.ChangeList;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
6 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.ChangeSet;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
7 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
8 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.AtomicReservableReference;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultChangeSet;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
10 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeContext;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
11 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.TreeContext;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
12
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
13 public class IndexManager {
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
14
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
15 AtomicReservableReference<TreeContext>.Reservation reservation;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
16
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
17 public IndexManager(AtomicReservableReference<TreeContext>.Reservation reservation){
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
18 this.reservation = reservation;
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
19 }
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
20
151
d9fbddf77bf6 add class Index
one
parents: 149
diff changeset
21 public void commit(Index index){
134
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
22 TreeContext tc = reservation.get();
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
23 ChangeSet cs = tc.getChangeSet();
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
24 TreeNode root = cs.getRoot();
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
25 ChangeSet prev = cs.prev();
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
26 ChangeList cl = cs.getChangeList();
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
27 String uuid = cs.uuid();
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
28 String treeName = cs.getTreeName();
f46a6e0e4594 add deleteIndexEditor
one
parents:
diff changeset
29 long revision = cs.revision();
149
feb2346ace19 refactor ParentIndex
one
parents: 146
diff changeset
30 ParentIndex parentIndex = cs.getParentIndex();
145
72f454eb04ec add parentIndex
one
parents: 134
diff changeset
31 DefaultChangeSet newCs = new DefaultChangeSet(root, prev, cl, uuid, treeName, revision, index, parentIndex);
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 }