Mercurial > hg > RemoteEditor > REPSessionManager
diff rep/SessionManager.java @ 31:593f915dd6ff JOINandPUT
for JOIN and PUT Testing
author | pin |
---|---|
date | Sat, 10 Nov 2007 12:52:24 +0900 |
parents | e67b1cec9dbe |
children | de8638eb0edd |
line wrap: on
line diff
--- a/rep/SessionManager.java Fri Nov 09 19:45:19 2007 +0900 +++ b/rep/SessionManager.java Sat Nov 10 12:52:24 2007 +0900 @@ -133,24 +133,36 @@ smList.sendJoin(repCmd); //sessionmanagerGUI.setComboEditor(repCmd.eid, channel); } + + /*** 各エディタのテスト用 ***/ + repCmd.setCMD(REP.SMCMD_JOIN_ACK); + REPPacketSend sendJoinAckTest = new REPPacketSend(channel); + sendJoinAckTest.send(repCmd); + break; case REP.SMCMD_JOIN_ACK: - editorList.setEID(repCmd); - editorList.sendJoinAck(repCmd); - sessionmanagerGUI.setComboEditor(repCmd.eid, channel); +// editorList.setEID(repCmd); +// editorList.sendJoinAck(repCmd); +// sessionmanagerGUI.setComboEditor(repCmd.eid, channel); break; + case REP.SMCMD_PUT: - int sessionID = sessionlist.addSession(channel, repCmd.string); //SIDを取得 - smList.sendUpdate(sessionID, repCmd.string); //updateコマンド:Session生成を通知 - sessionmanagerGUI.setComboSession(sessionID, repCmd.string); //ComboBoxにSessionを追加 - repCmd.setSID(sessionID); //SIDをセット - repCmd.setCMD(repCmd.cmd + 1); //ACKを返す - REPPacketSend repSend2 = new REPPacketSend(channel); - repSend2.send(repCmd); - //sessionlist.sendAddedSession(repCmd); + if(repCmd.string.length() == 0){ + sessionlist.addEditor(channel, 0, 0); + }else if(repCmd.string.length() > 0){ + int sid = sessionlist.addSession(channel, repCmd.string); + sessionlist.addEditor(channel, sid, 0); + } + + /*** 各エディタのテスト用 ***/ + repCmd.setCMD(REP.SMCMD_PUT_ACK); + REPPacketSend sendPutAckTest = new REPPacketSend(channel); + sendPutAckTest.send(repCmd); + break; // case REP.SMCMD_PUT_ACK: // break; + case REP.SMCMD_SELECT: sessionlist.addEditor(channel, repCmd.sid, repCmd); //sessionlistへ追加 repCmd.setCMD(repCmd.cmd + 1); @@ -162,8 +174,13 @@ case REP.SMCMD_SESSION: break; case REP.SMCMD_SM_JOIN: - this.isMaster = true; - myHost = repCmd.host; + //this.isMaster = true; + //myHost = repCmd.host; + if(isMaster){ + //REPPacketSend send = new REPPacketSend(channel); + repCmd.setCMD(REP.SMCMD_SM_JOIN_ACK); + smList.sendSessionList(sessionlist, repCmd); + } sendSessionManagerJoinAck(channel, repCmd); break; case REP.SMCMD_SM_JOIN_ACK: @@ -265,6 +282,7 @@ //sm_join_com.setString(sm_join_com.string + ":" + socketString); send.send(REPCommand.SMCMD_SESSION_JOIN); smList.add(sessionchannel); + smList.setMaster(sessionchannel); }catch (IOException e) { e.printStackTrace(); }