# HG changeset patch # User tatsuki # Date 1409803945 -32400 # Node ID d6944d788121172cdd762698cf48c64777a841aa # Parent 89db8388db0f09fdacac843c712212e00782a748 fit Junglecore diff -r 89db8388db0f -r d6944d788121 src/main/java/alice/jungle/core/NetworkDefaultJungle.java --- a/src/main/java/alice/jungle/core/NetworkDefaultJungle.java Mon Sep 01 17:16:20 2014 +0900 +++ b/src/main/java/alice/jungle/core/NetworkDefaultJungle.java Thu Sep 04 13:12:25 2014 +0900 @@ -57,8 +57,8 @@ }; TreeNode root = new DefaultTreeNode(); ChangeSet set = new DefaultChangeSet(root,null,list,uuid,_name, 0); - DefaultTreeContext tc = new DefaultTreeContext(root,set); - JungleTree newTree = new NetworkDefaultJungleTree(_name, tc,uuid,journal.getWriter(),editor); + DefaultTreeContext tc = new DefaultTreeContext(root,set); + JungleTree newTree = new NetworkDefaultJungleTree(_name, tc,uuid,journal.getWriter(),editor); if(trees.putIfAbsent(_name,newTree) != null){ return null; } diff -r 89db8388db0f -r d6944d788121 src/main/java/alice/jungle/datasegment/transformer/NetworkAppendChildAt.java --- a/src/main/java/alice/jungle/datasegment/transformer/NetworkAppendChildAt.java Mon Sep 01 17:16:20 2014 +0900 +++ b/src/main/java/alice/jungle/datasegment/transformer/NetworkAppendChildAt.java Thu Sep 04 13:12:25 2014 +0900 @@ -24,7 +24,7 @@ } @Override - public Either edit(T _e) { + public Either edit(TreeNode _e) { Either either = _e.getChildren().addNewChildAt(pos); if(either.isA()){ // error @@ -33,10 +33,4 @@ return DefaultEither.newB(either.b()); } - @Override - public OperationLog getLog() { - // TODO Auto-generated method stub - return null; - } - } diff -r 89db8388db0f -r d6944d788121 src/main/java/alice/jungle/persistent/PersistentJungle.java --- a/src/main/java/alice/jungle/persistent/PersistentJungle.java Mon Sep 01 17:16:20 2014 +0900 +++ b/src/main/java/alice/jungle/persistent/PersistentJungle.java Thu Sep 04 13:12:25 2014 +0900 @@ -54,8 +54,8 @@ }; TreeNode root = new DefaultTreeNode(); ChangeSet set = new PersistentChangeSet(root,null,list,uuid,_name,0); - DefaultTreeContext tc = new DefaultTreeContext(root,set); - JungleTree newTree = new PersistentJungleTree(_name, tc,uuid, journal.getWriter(),editor); + DefaultTreeContext tc = new DefaultTreeContext(root,set); + JungleTree newTree = new PersistentJungleTree(_name, tc,uuid, journal.getWriter(),editor); if(trees.putIfAbsent(_name,newTree) != null){ return null; } diff -r 89db8388db0f -r d6944d788121 src/main/java/alice/jungle/persistent/PersistentJungleTree.java --- a/src/main/java/alice/jungle/persistent/PersistentJungleTree.java Mon Sep 01 17:16:20 2014 +0900 +++ b/src/main/java/alice/jungle/persistent/PersistentJungleTree.java Thu Sep 04 13:12:25 2014 +0900 @@ -10,17 +10,17 @@ import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultJungleTreeEditor; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.TreeContext; -public class PersistentJungleTree implements JungleTree { - private final AtomicReservableReference> repository; +public class PersistentJungleTree implements JungleTree { + private final AtomicReservableReference repository; private final String uuid; private final String treeName; private final ChangeListWriter writer; private final TreeEditor editor; - public PersistentJungleTree(String _treeName, TreeContext _tc,String _uuid, ChangeListWriter _writer,TreeEditor _editor) + public PersistentJungleTree(String _treeName, TreeContext _tc,String _uuid, ChangeListWriter _writer,TreeEditor _editor) { treeName = _treeName; - repository = new AtomicReservableReference>(_tc); + repository = new AtomicReservableReference(_tc); uuid = _uuid; writer = _writer; editor = _editor; @@ -29,16 +29,16 @@ @Override public JungleTreeEditor getTreeEditor() { - TreeContext tc = repository.get(); - PersistentTransactionManager txManager = new PersistentTransactionManager(treeName, writer,tc,repository,uuid); + TreeContext tc = repository.get(); + PersistentTransactionManager txManager = new PersistentTransactionManager(treeName, writer,tc,repository,uuid); TreeNode root = tc.getTreeNode(); - return new DefaultJungleTreeEditor(root,txManager,editor); + return new DefaultJungleTreeEditor(root,txManager,editor); } @Override public TreeNode getRootNode() { - TreeContext tc = repository.get(); + TreeContext tc = repository.get(); ChangeSet cs = tc.getChangeSet(); return cs.getRoot(); } diff -r 89db8388db0f -r d6944d788121 src/main/java/alice/jungle/persistent/PersistentTransactionManager.java --- a/src/main/java/alice/jungle/persistent/PersistentTransactionManager.java Mon Sep 01 17:16:20 2014 +0900 +++ b/src/main/java/alice/jungle/persistent/PersistentTransactionManager.java Thu Sep 04 13:12:25 2014 +0900 @@ -15,15 +15,15 @@ import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; -public class PersistentTransactionManager implements TransactionManager { - private final AtomicReservableReference> repository; - private final TreeContext tip; +public class PersistentTransactionManager implements TransactionManager { + private final AtomicReservableReference repository; + private final TreeContext tip; private final ChangeListWriter writer; private final String uuid; private final String treeName; - public PersistentTransactionManager(String _treeName, ChangeListWriter _writer,TreeContext _tip, - AtomicReservableReference> _repository,String _uuid) + public PersistentTransactionManager(String _treeName, ChangeListWriter _writer,TreeContext _tip, + AtomicReservableReference _repository,String _uuid) { repository = _repository; tip = _tip; @@ -33,7 +33,7 @@ } @Override - public Either> commit(TreeNode _newRoot,final TreeOperationLog _log) { + public Either commit(TreeNode _newRoot,final TreeOperationLog _log) { ChangeSet cs = tip.getChangeSet(); long currentRevision = cs.revision(); long nextRevision = currentRevision + 1; @@ -41,7 +41,7 @@ PersistentChangeList list = new PersistentChangeList(uuid, treeName, _log); TreeNode root = _newRoot; PersistentChangeSet newCs = new PersistentChangeSet(root, cs, list, uuid, treeName, nextRevision); - DefaultTreeContext newContext = new DefaultTreeContext(_newRoot,newCs); + DefaultTreeContext newContext = new DefaultTreeContext(_newRoot,newCs); @SuppressWarnings("rawtypes") Reservation reservation = repository.makeReservation(tip, newContext); @@ -53,7 +53,7 @@ return DefaultEither.newA((Error)new DefaultError()); } reservation.confirm(); - TransactionManager txManager = new PersistentTransactionManager(treeName, writer, newContext, repository, uuid); + TransactionManager txManager = new PersistentTransactionManager(treeName, writer, newContext, repository, uuid); return DefaultEither.newB(txManager); } diff -r 89db8388db0f -r d6944d788121 src/main/java/alice/jungle/transaction/NetworkDefaultJungleTree.java --- a/src/main/java/alice/jungle/transaction/NetworkDefaultJungleTree.java Mon Sep 01 17:16:20 2014 +0900 +++ b/src/main/java/alice/jungle/transaction/NetworkDefaultJungleTree.java Thu Sep 04 13:12:25 2014 +0900 @@ -9,17 +9,17 @@ import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.AtomicReservableReference; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.TreeContext; -public class NetworkDefaultJungleTree implements JungleTree { - private final AtomicReservableReference> repository; +public class NetworkDefaultJungleTree implements JungleTree { + private final AtomicReservableReference repository; private final String uuid; private final String treeName; private final ChangeListWriter writer; private final TreeEditor editor; - public NetworkDefaultJungleTree(String _treeName, TreeContext _tc,String _uuid,ChangeListWriter _writer,TreeEditor _editor) + public NetworkDefaultJungleTree(String _treeName, TreeContext _tc,String _uuid,ChangeListWriter _writer,TreeEditor _editor) { treeName = _treeName; - repository = new AtomicReservableReference>(_tc); + repository = new AtomicReservableReference(_tc); uuid = _uuid; writer = _writer; editor = _editor; @@ -28,17 +28,17 @@ @Override public JungleTreeEditor getTreeEditor() { - TreeContext tc = repository.get(); - NetworkTransactionManager txManager = new NetworkTransactionManager(treeName, writer,tc,repository,uuid); + TreeContext tc = repository.get(); + NetworkTransactionManager txManager = new NetworkTransactionManager(treeName, writer,tc,repository,uuid); TreeNode root = tc.getTreeNode(); - return new NetworkDefaultJungleTreeEditor(treeName, root,txManager,editor); + return new NetworkDefaultJungleTreeEditor(treeName, root,txManager,editor); } @Override public JungleTreeEditor getLocalTreeEditor() { - TreeContext tc = repository.get(); - NetworkTransactionManager txManager = new NetworkTransactionManager(treeName, writer,tc,repository,uuid); + TreeContext tc = repository.get(); + NetworkTransactionManager txManager = new NetworkTransactionManager(treeName, writer,tc,repository,uuid); TreeNode root = tc.getTreeNode(); return NetworkDefaultJungleTreeEditor.NewLocalJungleTreeEditor(treeName,root,txManager, editor); } @@ -46,7 +46,7 @@ @Override public TreeNode getRootNode() { - TreeContext tc = repository.get(); + TreeContext tc = repository.get(); ChangeSet cs = tc.getChangeSet(); return cs.getRoot(); } diff -r 89db8388db0f -r d6944d788121 src/main/java/alice/jungle/transaction/NetworkDefaultJungleTreeEditor.java --- a/src/main/java/alice/jungle/transaction/NetworkDefaultJungleTreeEditor.java Mon Sep 01 17:16:20 2014 +0900 +++ b/src/main/java/alice/jungle/transaction/NetworkDefaultJungleTreeEditor.java Thu Sep 04 13:12:25 2014 +0900 @@ -12,7 +12,6 @@ import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.TreeEditor; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.TreeNode; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.DefaultTreeOperationLog; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.LoggingNodeHook; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.OperationLog; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger.TreeOperationLog; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.DefaultTreeOperation; @@ -29,21 +28,21 @@ import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.IterableConverter; -public class NetworkDefaultJungleTreeEditor implements JungleTreeEditor { +public class NetworkDefaultJungleTreeEditor implements JungleTreeEditor { - private final TransactionManager txManager; + private final TransactionManager txManager; private final TreeNode root; private final TreeEditor editor; private final String treeName; private final TreeOperationLog log; private boolean exportLog; - public NetworkDefaultJungleTreeEditor(String _treeName, TreeNode _root,TransactionManager _txManager,TreeEditor _editor) + public NetworkDefaultJungleTreeEditor(String _treeName, TreeNode _root,TransactionManager _txManager,TreeEditor _editor) { this(_treeName, _root,_txManager,_editor,new DefaultTreeOperationLog()); } - public NetworkDefaultJungleTreeEditor(String _treeName, TreeNode _root,TransactionManager _txManager,TreeEditor _editor, TreeOperationLog _log) + public NetworkDefaultJungleTreeEditor(String _treeName, TreeNode _root,TransactionManager _txManager,TreeEditor _editor, TreeOperationLog _log) { treeName = _treeName; root = _root; @@ -53,28 +52,28 @@ exportLog = true; } - public static NetworkDefaultJungleTreeEditor NewLocalJungleTreeEditor(String _treeName, TreeNode _root,TransactionManager _txManager,TreeEditor _editor) { - NetworkDefaultJungleTreeEditor treeEditor = new NetworkDefaultJungleTreeEditor(_treeName, _root,_txManager,_editor,new DefaultTreeOperationLog()); + public static NetworkDefaultJungleTreeEditor NewLocalJungleTreeEditor(String _treeName, TreeNode _root,TransactionManager _txManager,TreeEditor _editor) { + NetworkDefaultJungleTreeEditor treeEditor = new NetworkDefaultJungleTreeEditor(_treeName, _root,_txManager,_editor,new DefaultTreeOperationLog()); treeEditor.exportLog = false; return treeEditor; } - public static NetworkDefaultJungleTreeEditor NewLocalJungleTreeEditor(String _treeName, TreeNode _root,TransactionManager _txManager,TreeEditor _editor, TreeOperationLog _log) { - NetworkDefaultJungleTreeEditor treeEditor = new NetworkDefaultJungleTreeEditor(_treeName, _root,_txManager,_editor,_log); + public static NetworkDefaultJungleTreeEditor NewLocalJungleTreeEditor(String _treeName, TreeNode _root,TransactionManager _txManager,TreeEditor _editor, TreeOperationLog _log) { + NetworkDefaultJungleTreeEditor treeEditor = new NetworkDefaultJungleTreeEditor(_treeName, _root,_txManager,_editor,_log); treeEditor.exportLog = false; return treeEditor; } private Either _edit(final NodePath _path,NodeEditor _e) { - LoggingNodeHook hook = new LoggingNodeHook(_e); - Either either = editor.edit(root,_path,hook); + //LoggingNodeHook hook = new LoggingNodeHook(_e); + Either either = editor.edit(root,_path,_e); if(either.isA()){ return DefaultEither.newA(either.a()); } TreeNode newNode = either.b(); - OperationLog newLog = hook.getLog(); + OperationLog newLog = newNode.getLog(); IterableConverter.Converter converter = new IterableConverter.Converter(){ @Override @@ -89,7 +88,7 @@ JungleTreeEditor newEditor; if(exportLog) { - newEditor = new NetworkDefaultJungleTreeEditor(treeName, newNode,txManager,editor,newTreeOpLog); + newEditor = new NetworkDefaultJungleTreeEditor(treeName, newNode,txManager,editor,newTreeOpLog); } else { newEditor = NetworkDefaultJungleTreeEditor.NewLocalJungleTreeEditor(treeName, newNode, txManager, editor, newTreeOpLog); } @@ -133,7 +132,7 @@ @Override public Either success() { - Either> either = txManager.commit(root,log); + Either either = txManager.commit(root,log); if(either.isA()){ return DefaultEither.newA(either.a()); } @@ -145,8 +144,8 @@ } } - TransactionManager newTxManager = either.b(); - JungleTreeEditor newTreeEditor = new NetworkDefaultJungleTreeEditor(treeName, root,newTxManager,editor); + TransactionManager newTxManager = either.b(); + JungleTreeEditor newTreeEditor = new NetworkDefaultJungleTreeEditor(treeName, root,newTxManager,editor); return DefaultEither.newB(newTreeEditor); } diff -r 89db8388db0f -r d6944d788121 src/main/java/alice/jungle/transaction/NetworkTransactionManager.java --- a/src/main/java/alice/jungle/transaction/NetworkTransactionManager.java Mon Sep 01 17:16:20 2014 +0900 +++ b/src/main/java/alice/jungle/transaction/NetworkTransactionManager.java Thu Sep 04 13:12:25 2014 +0900 @@ -20,17 +20,17 @@ import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; -public class NetworkTransactionManager implements TransactionManager +public class NetworkTransactionManager implements TransactionManager { - private final AtomicReservableReference> repository; - private final TreeContext tip; + private final AtomicReservableReference repository; + private final TreeContext tip; private final ChangeListWriter writer; private final String uuid; private final String treeName; - public NetworkTransactionManager(String _treeName, ChangeListWriter _writer,TreeContext _tip, - AtomicReservableReference> _repository,String _uuid) + public NetworkTransactionManager(String _treeName, ChangeListWriter _writer,TreeContext _tip, + AtomicReservableReference _repository,String _uuid) { repository = _repository; tip = _tip; @@ -40,7 +40,7 @@ } @Override - public Either> commit(TreeNode _newRoot,final TreeOperationLog _log) { + public Either commit(TreeNode _newRoot,final TreeOperationLog _log) { ChangeSet cs = tip.getChangeSet(); long currentRevision = cs.revision(); long nextRevision = currentRevision + 1; @@ -62,7 +62,7 @@ TreeNode root = _newRoot; DefaultChangeSet newCs = new DefaultChangeSet(root, cs, list, uuid, treeName, nextRevision); - DefaultTreeContext newContext = new DefaultTreeContext(_newRoot,newCs); + DefaultTreeContext newContext = new DefaultTreeContext(_newRoot,newCs); @SuppressWarnings("rawtypes") Reservation reservation = repository.makeReservation(tip, newContext); @@ -74,7 +74,7 @@ return DefaultEither.newA((Error)new DefaultError()); } reservation.confirm(); - TransactionManager txManager = new NetworkTransactionManager(treeName, writer, newContext, repository, uuid); + TransactionManager txManager = new NetworkTransactionManager(treeName, writer, newContext, repository, uuid); return DefaultEither.newB(txManager); } diff -r 89db8388db0f -r d6944d788121 src/main/java/app/bbs/NetworkJungleBulletinBoard.java --- a/src/main/java/app/bbs/NetworkJungleBulletinBoard.java Mon Sep 01 17:16:20 2014 +0900 +++ b/src/main/java/app/bbs/NetworkJungleBulletinBoard.java Thu Sep 04 13:12:25 2014 +0900 @@ -125,7 +125,7 @@ public Iterable getBoards() { JungleTree tree = jungle.getTreeByName("boards"); TreeNode node = tree.getRootNode(); - Children chs = node.getChildren(); + Children chs = node.getChildren(); IterableConverter.Converter converter = new IterableConverter.Converter() { public String conv(TreeNode _b) { @@ -186,8 +186,7 @@ NodeEditor e = new NodeEditor() { ByteBuffer tBuffer2 = ByteBuffer.allocate(16); - public Either edit(T _e) { - TreeNode node = _e; + public Either edit(TreeNode node) { node = node.getAttributes().put("author", ByteBuffer.wrap(_author.getBytes())).b(); node = node.getAttributes().put("mes", ByteBuffer.wrap(_initMessage.getBytes())).b(); node = node.getAttributes().put("key", ByteBuffer.wrap(_editKey.getBytes())).b(); @@ -196,15 +195,6 @@ return DefaultEither.newB(node); } - @Override - public OperationLog getLog() { - OperationLog op = new DefaultOperationLog(); - op = op.add(new PutAttributeOperation("author", ByteBuffer.wrap(_author.getBytes()))); - op = op.add(new PutAttributeOperation("mes", ByteBuffer.wrap(_initMessage.getBytes()))); - op = op.add(new PutAttributeOperation("key", ByteBuffer.wrap(_editKey.getBytes()))); - op = op.add(new PutAttributeOperation("timestamp", tBuffer2)); - return op; - } }; either = editor.edit(root.add(0), e); @@ -242,13 +232,13 @@ // TraversableNodeWrapper traversable = new // TraversableNodeWrapper(node); DefaultEvaluator evaluator = new DefaultEvaluator(path); - Either> ret = traverser.traverse(node, + Either ret = traverser.traverse(node, evaluator); if (ret.isA()) { Assert.fail(); } - Traversal traversal = ret.b(); + Traversal traversal = ret.b(); TreeNode target = traversal.destination(); int size = target.getChildren().size(); JungleTreeEditor editor = tree.getTreeEditor(); @@ -260,20 +250,12 @@ NodeEditor e = new NodeEditor() { - public Either edit(T _e) { - TreeNode node = _e; + public Either edit(TreeNode node) { node = node.getAttributes().put("mes", ByteBuffer.wrap(_message.getBytes())).b(); node = node.getAttributes().put("timestamp", tBuffer).b(); return DefaultEither.newB(node); } - @Override - public OperationLog getLog() { - OperationLog op = new DefaultOperationLog(); - op = op.add(new PutAttributeOperation("mes", ByteBuffer.wrap(_message.getBytes()))); - op = op.add(new PutAttributeOperation("timestamp", tBuffer)); - return op; - } }; path = path.add(size); either = editor.edit(path, e); @@ -311,8 +293,7 @@ editor = either.b(); NodeEditor e = new NodeEditor() { - public Either edit(T _e) { - TreeNode node = _e; + public Either edit(TreeNode node) { node = node.getAttributes().put("author", ByteBuffer.wrap(_author.getBytes())).b(); node = node.getAttributes().put("mes", ByteBuffer.wrap(_message.getBytes())).b(); node = node.getAttributes().put("key", ByteBuffer.wrap(_editKey.getBytes())).b(); @@ -320,15 +301,6 @@ return DefaultEither.newB(node); } - @Override - public OperationLog getLog() { - OperationLog op = new DefaultOperationLog(); - op = op.add(new PutAttributeOperation("author", ByteBuffer.wrap(_author.getBytes()))); - op = op.add(new PutAttributeOperation("mes", ByteBuffer.wrap(_message.getBytes()))); - op = op.add(new PutAttributeOperation("key", ByteBuffer.wrap(_editKey.getBytes()))); - op = op.add(new PutAttributeOperation("timestamp", tBuffer)); - return op; - } }; path = path.add(size); either = editor.edit(path, e); @@ -360,8 +332,7 @@ } JungleTreeEditor editor = tree.getTreeEditor(); NodeEditor e = new NodeEditor() { - public Either edit(T _e) { - TreeNode node = _e; + public Either edit(TreeNode node) { System.out.println(new String(node.getAttributes().get("mes").array())); node = node.getAttributes().put("author", ByteBuffer.wrap(_author.getBytes())).b(); node = node.getAttributes().put("mes", ByteBuffer.wrap(_message.getBytes())).b(); @@ -371,15 +342,6 @@ return DefaultEither.newB(node); } - @Override - public OperationLog getLog() { - OperationLog op = new DefaultOperationLog(); - op = op.add(new PutAttributeOperation("author", ByteBuffer.wrap(_author.getBytes()))); - op = op.add(new PutAttributeOperation("mes", ByteBuffer.wrap(_message.getBytes()))); - op = op.add(new PutAttributeOperation("key", ByteBuffer.wrap(_editKey.getBytes()))); - op = op.add(new PutAttributeOperation("timestamp", tBuffer)); - return op; - } }; either = editor.edit(path, e); if (either.isA()) { @@ -413,11 +375,10 @@ NodeEditor e = new NodeEditor() { String str; - public Either edit(T _e) { - TreeNode node = _e; + public Either edit(TreeNode node) { str = "0"; int count = 0; - for (; _e.getAttributes().get("mes" + String.valueOf(count)) != null; count++) { + for (; node.getAttributes().get("mes" + String.valueOf(count)) != null; count++) { } str = String.valueOf(count); node = node.getAttributes().put("mes" + str,ByteBuffer.wrap(_message.getBytes())).b(); @@ -425,13 +386,6 @@ return DefaultEither.newB(node); } - @Override - public OperationLog getLog() { - OperationLog op = new DefaultOperationLog(); - op = op.add(new PutAttributeOperation("mes" + str,ByteBuffer.wrap(_message.getBytes()))); - op = op.add(new PutAttributeOperation("timestamp" + str,tBuffer)); - return op; - } }; either = editor.edit(path, e); if (either.isA()) { @@ -462,21 +416,13 @@ JungleTreeEditor editor = tree.getTreeEditor(); NodeEditor e = new NodeEditor() { - public Either edit(T _e) { - TreeNode node = _e; + public Either edit(TreeNode node) { // EnableNodeWrapper node = _e.getWrap(); node = node.getAttributes().put("mes" + id,ByteBuffer.wrap(_message.getBytes())).b(); node = node.getAttributes().put("timestamp" + id, tBuffer).b(); return DefaultEither.newB(node); } - @Override - public OperationLog getLog() { - OperationLog op = new DefaultOperationLog(); - op = op.add(new PutAttributeOperation("mes"+ id, ByteBuffer.wrap(_message.getBytes()))); - op = op.add(new PutAttributeOperation("timestamp"+ id, tBuffer)); - return op; - } }; either = editor.edit(path, e); if (either.isA()) { @@ -538,13 +484,12 @@ JungleTreeEditor editor = tree.getTreeEditor(); NodeEditor e = new NodeEditor() { - public Either edit(T _e) { - TreeNode node = _e; + public Either edit(TreeNode node) { node = node.getAttributes().delete("mes" + id).b(); node = node.getAttributes().delete("timestamp" + id).b(); int count = Integer.parseInt(id); for (; node.getAttributes().get("mes" + String.valueOf(count + 1)) != null;) { - node = node.getAttributes().put("mes" + count,_e.getAttributes().get("mes"+ String.valueOf(count + 1))).b(); + node = node.getAttributes().put("mes" + count,node.getAttributes().get("mes"+ String.valueOf(count + 1))).b(); node = node.getAttributes().put("timestamp" + count, tBuffer).b(); count++; } @@ -556,10 +501,6 @@ return DefaultEither.newB(node); } - @Override - public OperationLog getLog() { - return new DefaultOperationLog(); - } }; either = editor.edit(path, e); if (either.isA()) { @@ -584,24 +525,13 @@ JungleTreeEditor editor = tree.getTreeEditor(); NodeEditor e = new NodeEditor() { - public Either edit(T _e) { - TreeNode node = _e; + public Either edit(TreeNode node) { node = node.getAttributes().put("author", ByteBuffer.wrap(_author.getBytes())).b(); node = node.getAttributes().put("mes", ByteBuffer.wrap(_message.getBytes())).b(); node = node.getAttributes().put("key", ByteBuffer.wrap(_editKey.getBytes())).b(); node = node.getAttributes().put("timestamp", tBuffer).b(); return DefaultEither.newB(node); } - - @Override - public OperationLog getLog() { - OperationLog op = new DefaultOperationLog(); - op = op.add(new PutAttributeOperation("author", ByteBuffer.wrap(_author.getBytes()))); - op = op.add(new PutAttributeOperation("mes", ByteBuffer.wrap(_message.getBytes()))); - op = op.add(new PutAttributeOperation("key", ByteBuffer.wrap(_editKey.getBytes()))); - op = op.add(new PutAttributeOperation("timestamp", tBuffer)); - return op; - } }; either = editor.edit(path, e); if (either.isA()) { @@ -617,7 +547,7 @@ requestCounter.incrementAndGet(); JungleTree tree = jungle.getTreeByName(_boardName); TreeNode node = tree.getRootNode(); - Children chs = node.getChildren(); + Children chs = node.getChildren(); final AtomicInteger counter = new AtomicInteger(0); IterableConverter.Converter converter = new IterableConverter.Converter() { public BoardMessage conv(TreeNode _b) { @@ -649,15 +579,15 @@ // TraversableNodeWrapper traversable = new // TraversableNodeWrapper(node); DefaultEvaluator evaluator = new DefaultEvaluator(path); - Either> ret = traverser.traverse(node, + Either ret = traverser.traverse(node, evaluator); if (ret.isA()) { Assert.fail(); } - Traversal traversal = ret.b(); + Traversal traversal = ret.b(); TreeNode target = traversal.destination(); - Children chs = target.getChildren(); + Children chs = target.getChildren(); final AtomicInteger counter = new AtomicInteger(0); IterableConverter.Converter converter = new IterableConverter.Converter() { @@ -691,13 +621,13 @@ // TraversableNodeWrapper traversable = new // TraversableNodeWrapper(node); DefaultEvaluator evaluator = new DefaultEvaluator(path); - Either> ret = traverser.traverse(node, + Either ret = traverser.traverse(node, evaluator); if (ret.isA()) { Assert.fail(); } - Traversal traversal = ret.b(); + Traversal traversal = ret.b(); TreeNode target = traversal.destination(); return new getAttributeImp(target); } diff -r 89db8388db0f -r d6944d788121 src/test/java/alice/jungle/PersistentJournalTest.java --- a/src/test/java/alice/jungle/PersistentJournalTest.java Mon Sep 01 17:16:20 2014 +0900 +++ b/src/test/java/alice/jungle/PersistentJournalTest.java Thu Sep 04 13:12:25 2014 +0900 @@ -63,8 +63,8 @@ JungleTree tree2 = jungle2.getTreeByName("hoge"); TreeNode node1 = tree1.getRootNode(); TreeNode node2 = tree2.getRootNode(); - Children child1 = node1.getChildren(); - Children child2 = node2.getChildren(); + Children child1 = node1.getChildren(); + Children child2 = node2.getChildren(); assertEquals(child1.size(), child2.size()); Either either1 = child1.at(pos); Either either2 = child1.at(pos);