annotate src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/store/trasnformer/DeleteChildAt.java @ 117:74723b26ad96

add IndexJungleTreeEditr and remove DefaultJungleIndexTreeEditor
author one
date Tue, 30 Sep 2014 13:15:22 +0900
parents 5df5505e1c1e
children 6e9a8d26e0cf
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
14
596a714e6a89 added documents
Shoshi TAMAKI
parents:
diff changeset
1 package jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.trasnformer;
596a714e6a89 added documents
Shoshi TAMAKI
parents:
diff changeset
2
103
bed3afd5c2e2 add Index but Not use
one
parents: 96
diff changeset
3 import fj.data.List;
bed3afd5c2e2 add Index but Not use
one
parents: 96
diff changeset
4 import fj.data.TreeMap;
110
cf17350a2415 traverse find args change Query
one
parents: 107
diff changeset
5 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath;
78
540a27dde42f Delete EnableNode and EnableNodeWrapper
one
parents: 31
diff changeset
6 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode;
79
b4f145174970 change log
one
parents: 78
diff changeset
7 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.DefaultOperationLog;
96
bd82c20a6da0 LoggingNode repair
one
parents: 93
diff changeset
8 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.LoggingNode;
79
b4f145174970 change log
one
parents: 78
diff changeset
9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.OperationLog;
b4f145174970 change log
one
parents: 78
diff changeset
10 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.DeleteChildAtOperation;
b4f145174970 change log
one
parents: 78
diff changeset
11 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.NodeOperation;
92
14ce7a0dedca Logging Node and Editor
one
parents: 86
diff changeset
12 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.DefaultEither;
23
Shoshi TAMAKI
parents: 14
diff changeset
13 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either;
24
Shoshi TAMAKI
parents: 23
diff changeset
14 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error;
110
cf17350a2415 traverse find args change Query
one
parents: 107
diff changeset
15 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Pair;
23
Shoshi TAMAKI
parents: 14
diff changeset
16
14
596a714e6a89 added documents
Shoshi TAMAKI
parents:
diff changeset
17 public class DeleteChildAt implements NodeEditor
596a714e6a89 added documents
Shoshi TAMAKI
parents:
diff changeset
18 {
596a714e6a89 added documents
Shoshi TAMAKI
parents:
diff changeset
19 private final int pos;
596a714e6a89 added documents
Shoshi TAMAKI
parents:
diff changeset
20 public DeleteChildAt(int _pos)
596a714e6a89 added documents
Shoshi TAMAKI
parents:
diff changeset
21 {
596a714e6a89 added documents
Shoshi TAMAKI
parents:
diff changeset
22 pos = _pos;
596a714e6a89 added documents
Shoshi TAMAKI
parents:
diff changeset
23 }
596a714e6a89 added documents
Shoshi TAMAKI
parents:
diff changeset
24
117
74723b26ad96 add IndexJungleTreeEditr and remove DefaultJungleIndexTreeEditor
one
parents: 111
diff changeset
25 public Either<Error,LoggingNode> _edit(LoggingNode logNode)
14
596a714e6a89 added documents
Shoshi TAMAKI
parents:
diff changeset
26 {
117
74723b26ad96 add IndexJungleTreeEditr and remove DefaultJungleIndexTreeEditor
one
parents: 111
diff changeset
27 Either<Error,LoggingNode> either = logNode.getChildren().deleteChildAt(pos);
92
14ce7a0dedca Logging Node and Editor
one
parents: 86
diff changeset
28 if(either.isA()){
14ce7a0dedca Logging Node and Editor
one
parents: 86
diff changeset
29 // error
14ce7a0dedca Logging Node and Editor
one
parents: 86
diff changeset
30 return either;
14ce7a0dedca Logging Node and Editor
one
parents: 86
diff changeset
31 }
14ce7a0dedca Logging Node and Editor
one
parents: 86
diff changeset
32 return DefaultEither.newB(either.b());
14
596a714e6a89 added documents
Shoshi TAMAKI
parents:
diff changeset
33 }
103
bed3afd5c2e2 add Index but Not use
one
parents: 96
diff changeset
34
bed3afd5c2e2 add Index but Not use
one
parents: 96
diff changeset
35 @Override
117
74723b26ad96 add IndexJungleTreeEditr and remove DefaultJungleIndexTreeEditor
one
parents: 111
diff changeset
36 public Either<Error, LoggingNode> edit(TreeNode _e) {
74723b26ad96 add IndexJungleTreeEditr and remove DefaultJungleIndexTreeEditor
one
parents: 111
diff changeset
37 LoggingNode logNode = wrap(_e);
103
bed3afd5c2e2 add Index but Not use
one
parents: 96
diff changeset
38 return _edit(logNode);
bed3afd5c2e2 add Index but Not use
one
parents: 96
diff changeset
39 }
bed3afd5c2e2 add Index but Not use
one
parents: 96
diff changeset
40
117
74723b26ad96 add IndexJungleTreeEditr and remove DefaultJungleIndexTreeEditor
one
parents: 111
diff changeset
41 public LoggingNode wrap(TreeNode node) {
103
bed3afd5c2e2 add Index but Not use
one
parents: 96
diff changeset
42 return new LoggingNode(node);
bed3afd5c2e2 add Index but Not use
one
parents: 96
diff changeset
43 }
bed3afd5c2e2 add Index but Not use
one
parents: 96
diff changeset
44
bed3afd5c2e2 add Index but Not use
one
parents: 96
diff changeset
45 @Override
117
74723b26ad96 add IndexJungleTreeEditr and remove DefaultJungleIndexTreeEditor
one
parents: 111
diff changeset
46 public LoggingNode wrap(TreeNode node, OperationLog op) {
103
bed3afd5c2e2 add Index but Not use
one
parents: 96
diff changeset
47 return new LoggingNode(node, op);
bed3afd5c2e2 add Index but Not use
one
parents: 96
diff changeset
48 }
bed3afd5c2e2 add Index but Not use
one
parents: 96
diff changeset
49
bed3afd5c2e2 add Index but Not use
one
parents: 96
diff changeset
50 @Override
111
5df5505e1c1e change Index type
one
parents: 110
diff changeset
51 public TreeMap<String, TreeMap<String, List<Pair<TreeNode, NodePath>>>> getIndex() {
103
bed3afd5c2e2 add Index but Not use
one
parents: 96
diff changeset
52 // TODO Auto-generated method stub
bed3afd5c2e2 add Index but Not use
one
parents: 96
diff changeset
53 return null;
bed3afd5c2e2 add Index but Not use
one
parents: 96
diff changeset
54 }
14
596a714e6a89 added documents
Shoshi TAMAKI
parents:
diff changeset
55 }