Mercurial > hg > RemoteEditor > REPSessionManager
changeset 169:2974db051dd8
*** empty log message ***
author | pin |
---|---|
date | Thu, 28 Aug 2008 18:56:46 +0900 |
parents | 4ed6393ec68e |
children | 30cf7747d134 |
files | rep/SessionManager.java |
diffstat | 1 files changed, 15 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/rep/SessionManager.java Thu Aug 28 18:54:01 2008 +0900 +++ b/rep/SessionManager.java Thu Aug 28 18:56:46 2008 +0900 @@ -352,19 +352,30 @@ Editor editor = session.getEditor(channel); Editor prevEditor = session.getPrevEditor(editor); - if(editor.isFinished){ - set - } - if(editor.isMerging()){ //Handlerを切り替える setMergeState(prevEditor.getChannel(), session.getSID()); + }else { + setDoWaitingState(prevEditor.getChannel(), session.getSID()); } + + } break; } } + private void setDoWaitingState(REPSocketChannel<REPCommand> channel, int sid) { + if(packetSetList.size() < 0){ + setNormalState(channel, sid); + } + } + + private void setNormalState(REPSocketChannel<REPCommand> channel, int sid) { + SelectionKey key = channel.keyFor(selector); + key.attach(new REPHandlerImpl(sid, this)); + } + private void setMergeState(REPSocketChannel<REPCommand> channel, int sid) { SelectionKey key = channel.keyFor(selector); key.attach(new REPHandlerInMerge(sid, this));