comparison rep/FirstConnector.java @ 359:fa041bae35f1

all code written for distributed session except gather.
author kono
date Sun, 19 Oct 2008 19:24:38 +0900
parents 034acadc0cdc
children b25f832f875d
comparison
equal deleted inserted replaced
358:034acadc0cdc 359:fa041bae35f1
28 SessionManager.logger.writeLog("FirstConnector: command = " + command); 28 SessionManager.logger.writeLog("FirstConnector: command = " + command);
29 switch(command.cmd) { 29 switch(command.cmd) {
30 case SMCMD_JOIN: 30 case SMCMD_JOIN:
31 { 31 {
32 //どのSessionにも属さないエディタをリストに追加 32 //どのSessionにも属さないエディタをリストに追加
33 //エディタとchannelは1対1 (ではない) 33 //エディタとchannelは1対1 (ではないかも)
34 //エディタが新しくputする場合は新しくソケットを作る 34 //エディタが新しくputする場合は新しくソケットを作る
35 // 1対1でない場合は、multiplexerを挿めば良い 35 // 1対1でない場合は、multiplexerを挿めば良い
36 // ここのeditorList はsessionのとは別物 36 Editor editor = manager.newEditor(channel);
37 Editor editor = new Editor(manager,-1,channel);
38 editor.setHost(manager.myHost); 37 editor.setHost(manager.myHost);
39 manager.editorList.add(editor);
40 manager.updateGUI();
41 fw = editor; 38 fw = editor;
42 break; 39 break;
43 } 40 }
44 case SMCMD_PUT: 41 case SMCMD_PUT:
45 { 42 {
46 // put の場合でも、eid は、masterまで聞きにいく必要が 43 // 新しいeditorとsessionをここで作る。eid,sidは、
47 // ある。 44 // session manager IDが付いているので、global unique
48 Editor editor = new Editor(manager,0,channel); 45 Editor editor = manager.newEditor(channel);
46 Session session = manager.newSession(editor);
47 editor.setSID(session.getSID());
49 editor.setHost(manager.myHost); 48 editor.setHost(manager.myHost);
50 manager.editorList.add(editor);
51 fw = editor; 49 fw = editor;
52 break; 50 break;
53 } 51 }
54 case SMCMD_SM_JOIN: 52 case SMCMD_SM_JOIN:
55 { 53 {