Mercurial > hg > Members > tatsuki > bench > jungle-core
annotate src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/store/trasnformer/DeleteAttribute.java @ 135:6e9a8d26e0cf
refactor
author | one |
---|---|
date | Fri, 24 Oct 2014 18:49:48 +0900 |
parents | 74723b26ad96 |
children | 371b6ddb78f2 |
rev | line source |
---|---|
13 | 1 package jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.trasnformer; |
2 | |
103 | 3 import fj.data.List; |
4 import fj.data.TreeMap; | |
110 | 5 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath; |
78 | 6 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; |
96 | 7 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.LoggingNode; |
79 | 8 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.OperationLog; |
92 | 9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.DefaultEither; |
23 | 10 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; |
24 | 11 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; |
110 | 12 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Pair; |
23 | 13 |
13 | 14 public class DeleteAttribute implements NodeEditor |
15 { | |
14 | 16 private final String key; |
17 public DeleteAttribute(String _key) | |
18 { | |
19 key = _key; | |
20 } | |
13 | 21 |
117
74723b26ad96
add IndexJungleTreeEditr and remove DefaultJungleIndexTreeEditor
one
parents:
111
diff
changeset
|
22 public Either<Error,LoggingNode> _edit(LoggingNode logNode) |
13 | 23 { |
117
74723b26ad96
add IndexJungleTreeEditr and remove DefaultJungleIndexTreeEditor
one
parents:
111
diff
changeset
|
24 Either<Error,LoggingNode> either = logNode.getAttributes().delete(key); |
92 | 25 if(either.isA()){ |
26 // error | |
27 return either; | |
28 } | |
29 return DefaultEither.newB(either.b()); | |
13 | 30 } |
103 | 31 |
32 @Override | |
117
74723b26ad96
add IndexJungleTreeEditr and remove DefaultJungleIndexTreeEditor
one
parents:
111
diff
changeset
|
33 public Either<Error, LoggingNode> edit(TreeNode _e) { |
74723b26ad96
add IndexJungleTreeEditr and remove DefaultJungleIndexTreeEditor
one
parents:
111
diff
changeset
|
34 LoggingNode logNode = wrap(_e); |
103 | 35 return _edit(logNode); |
36 } | |
79 | 37 |
117
74723b26ad96
add IndexJungleTreeEditr and remove DefaultJungleIndexTreeEditor
one
parents:
111
diff
changeset
|
38 public LoggingNode wrap(TreeNode node) { |
103 | 39 return new LoggingNode(node); |
40 } | |
41 | |
42 @Override | |
117
74723b26ad96
add IndexJungleTreeEditr and remove DefaultJungleIndexTreeEditor
one
parents:
111
diff
changeset
|
43 public LoggingNode wrap(TreeNode node, OperationLog op) { |
103 | 44 return new LoggingNode(node, op); |
45 } | |
13 | 46 } |