# HG changeset patch # User one # Date 1263632546 -32400 # Node ID 2b034d12170e6d2a67debe84d8b8ecdee21c8a95 # Parent 0e72945867bbf250c8c34c63a717febc1b9fe29c early sent list shortning. not yet worked. diff -r 0e72945867bb -r 2b034d12170e rep/handler/Editor.java --- a/rep/handler/Editor.java Tue Jan 12 02:24:29 2010 +0900 +++ b/rep/handler/Editor.java Sat Jan 16 18:02:26 2010 +0900 @@ -202,7 +202,7 @@ boolean merge(REPCommand command) { //マージして送信 - return translator.catchOwnCommand(this, command.eid); + return translator.catchOwnCommand(this, command); } @Override diff -r 0e72945867bb -r 2b034d12170e rep/handler/Translator.java --- a/rep/handler/Translator.java Tue Jan 12 02:24:29 2010 +0900 +++ b/rep/handler/Translator.java Sat Jan 16 18:02:26 2010 +0900 @@ -54,7 +54,7 @@ * Start merge process. * @param cmd */ - public boolean catchOwnCommand(REPNode editor, int eid0){ + public boolean catchOwnCommand(REPNode editor, REPCommand prev){ logger.writeLog("beforeMerge:"+unMergedCmds); LinkedList output = new LinkedList(); // merge queue上にあるコマンドを全部undoコマンドするのと同時に @@ -63,12 +63,12 @@ output.add( createUndo(cmd0) ); } - TreeSet cmds = new TreeSet(new REPCommandComparator(eid0)); + TreeSet cmds = new TreeSet(new REPCommandComparator(1)); for( REPCommand cmd0 : editor.getSentList()) { if (cmd0.cmd==REP.REPCMD_INSERT || cmd0.cmd==REP.REPCMD_DELETE) cmds.add(cmd0); } - logger.writeLog("Ediotr"+eid+" Merge:: sorted sent list => Eid="+eid+cmds); + logger.writeLog("Ediotr"+eid+" Merge:: sorted sent list => Eid="+eid+cmds+" ack="+prev); output.addAll(cmds); // ACKが来たものは必ず先頭 diff -r 0e72945867bb -r 2b034d12170e test/mergertest/TestMerger.java --- a/test/mergertest/TestMerger.java Tue Jan 12 02:24:29 2010 +0900 +++ b/test/mergertest/TestMerger.java Sat Jan 16 18:02:26 2010 +0900 @@ -50,7 +50,7 @@ trans.transReceiveCmd(null, command); } for(int i = 0; i < commandList.size(); i++){ - trans.catchOwnCommand(this,eid); + trans.catchOwnCommand(this,null); System.out.println(); } }