Mercurial > hg > Database > jungle-network
diff src/jungle/test/bbs/NetworkJungleBulletinBoard.java @ 65:ebf42371454b
remove warning
author | one |
---|---|
date | Wed, 14 Aug 2013 17:44:09 +0900 |
parents | 16135d5e804f |
children |
line wrap: on
line diff
--- a/src/jungle/test/bbs/NetworkJungleBulletinBoard.java Fri Jul 19 11:16:48 2013 +0900 +++ b/src/jungle/test/bbs/NetworkJungleBulletinBoard.java Wed Aug 14 17:44:09 2013 +0900 @@ -8,7 +8,6 @@ import alice.jungle.core.NetworkDefaultJungle; import alice.jungle.datasegment.store.operations.DefaultTreeOperationLogContainer; import alice.jungle.transaction.NetworkDefaultJungleTreeEditor; -import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.DefaultJungle; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.Jungle; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTree; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTreeEditor; @@ -19,13 +18,13 @@ import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.TreeOperation; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.trasnformer.EditableNode; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.trasnformer.NodeEditor; +import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.DefaultTraverser; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.DefaultEither; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error; import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.IterableConverter; import jungle.test.bbs.codesegment.HashLogUpdateCodeSegment; -import jungle.test.bbs.codesegment.NullCodeSegmentForUpdate; public class NetworkJungleBulletinBoard implements BulletinBoard { @@ -127,14 +126,13 @@ throw new IllegalStateException(); } - JungleTreeEditor editor; Either<Error, JungleTreeEditor> either; do{ Node node = tree.getRootNode(); int size = node.getChildren().size(); DefaultNodePath path = new DefaultNodePath(); - editor = tree.getTreeEditor(); + JungleTreeEditor editor = tree.getTreeEditor(); either = editor.addNewChildAt(path,size); if(either.isA()){ throw new IllegalStateException(); @@ -159,7 +157,8 @@ editor = either.b(); either = editor.success(); try { - putTreeOperationLog((NetworkDefaultJungleTreeEditor)editor, size, timestamp); + NetworkDefaultJungleTreeEditor<DefaultTreeNode> netEditor = (NetworkDefaultJungleTreeEditor<DefaultTreeNode>) editor; + putTreeOperationLog(netEditor, size, timestamp); } catch (IOException e1) { e1.printStackTrace(); } @@ -169,14 +168,12 @@ public void editMessage(String _board,String _uuid,final String _author,final String _message,final String _editKey) { - JungleTreeEditor editor = null; - Either<Error,JungleTreeEditor> either = null; - do{ + for(;;) { DefaultNodePath path = new DefaultNodePath(); path = path.add(Integer.parseInt(_uuid)); JungleTree tree = jungle.getTreeByName(_board); - editor = tree.getTreeEditor(); + JungleTreeEditor editor = tree.getTreeEditor(); final long timestamp = new Date().getTime(); NodeEditor e = new NodeEditor(){ public <T extends EditableNode<T>> Either<Error, T> edit(T _e){ @@ -189,7 +186,7 @@ } }; - either = editor.edit(path,e); + Either<Error, JungleTreeEditor> either = editor.edit(path,e); if(either.isA()){ throw new IllegalStateException(); } @@ -200,7 +197,11 @@ } catch (IOException e1) { e1.printStackTrace(); } - }while(either.isA()); + if(!either.isA()) { + return; + } + } + } public Iterable<BoardMessage> getMessages(String _boardName) @@ -223,7 +224,7 @@ return new IterableConverter<BoardMessage,Node>(chs,converter); } - private void putTreeOperationLog(NetworkDefaultJungleTreeEditor editor, int pos, long timestamp) throws IOException { + private void putTreeOperationLog(NetworkDefaultJungleTreeEditor<DefaultTreeNode> editor, int pos, long timestamp) throws IOException { String uuid = editor.getID(); String treeName = editor.getTreeName(); String updaterName = editor.getUpdaterName();