comparison src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/transaction/DefaultJungleTreeEditor.java @ 92:14ce7a0dedca

Logging Node and Editor
author one
date Sat, 06 Sep 2014 05:03:10 +0900
parents fb1dc448ac8c
children ef68358ed0e8
comparison
equal deleted inserted replaced
86:fb1dc448ac8c 92:14ce7a0dedca
5 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTreeEditor; 5 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTreeEditor;
6 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath; 6 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath;
7 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.TreeEditor; 7 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.TreeEditor;
8 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; 8 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode;
9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.DefaultTreeOperationLog; 9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.DefaultTreeOperationLog;
10 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.LoggingNodeHook; 10 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.LoggingNode;
11 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.OperationLog; 11 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.OperationLog;
12 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.TreeOperationLog; 12 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.TreeOperationLog;
13 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.DefaultTreeOperation; 13 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.DefaultTreeOperation;
14 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.NodeOperation; 14 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.NodeOperation;
15 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.TreeOperation; 15 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.TreeOperation;
43 log = _log; 43 log = _log;
44 } 44 }
45 45
46 private Either<Error,JungleTreeEditor> _edit(final NodePath _path,NodeEditor _e) 46 private Either<Error,JungleTreeEditor> _edit(final NodePath _path,NodeEditor _e)
47 { 47 {
48 LoggingNodeHook hook = new LoggingNodeHook(_e); 48 //LoggingNodeHook hook = new LoggingNodeHook(_e);
49 Either<Error,TreeNode> either = editor.edit(root,_path,hook); 49 Either<Error,LoggingNode> either = editor.edit(root,_path,_e);
50 if(either.isA()){ 50 if(either.isA()){
51 return DefaultEither.newA(either.a()); 51 return DefaultEither.newA(either.a());
52 } 52 }
53 53
54 TreeNode newNode = either.b(); 54 LoggingNode newLogging = either.b();
55 OperationLog newLog = hook.getLog(); 55 OperationLog newLog = newLogging.getOperationLog();
56 TreeNode newNode = newLogging.getWrap();
56 57
57 IterableConverter.Converter<TreeOperation,NodeOperation> converter = new IterableConverter.Converter<TreeOperation,NodeOperation>(){ 58 IterableConverter.Converter<TreeOperation,NodeOperation> converter = new IterableConverter.Converter<TreeOperation,NodeOperation>(){
58 @Override 59 @Override
59 public TreeOperation conv(NodeOperation _b){ 60 public TreeOperation conv(NodeOperation _b){
60 return new DefaultTreeOperation(_path,_b); 61 return new DefaultTreeOperation(_path,_b);