Mercurial > hg > RemoteEditor > REPSessionManager
view rep/EditorList.java @ 287:1ff8bfc0a99a test-editor
*** empty log message ***
author | kono |
---|---|
date | Sun, 28 Sep 2008 15:46:36 +0900 |
parents | 526ee0354067 |
children | 77f443f6dc9f |
line wrap: on
line source
package rep; import java.util.LinkedList; import rep.channel.REPSocketChannel; public class EditorList { private int numberOfEditor; private LinkedList<Editor> editorList = new LinkedList<Editor>(); public void sendJoinAck(REPCommand repCmd) { Editor editor = null; for(Editor editor2 : editorList){ error(String.valueOf(editor2.getEID()), String.valueOf(repCmd.eid)); if(editor2.getEID() == repCmd.eid){ editor = editor2; break; } } error(editor); editor.getChannel().write(repCmd); } public void sendJoinAck(REPSocketChannel<REPCommand> channel, REPCommand repCmd) { REPCommand command = repCmd; command.setCMD(REP.SMCMD_JOIN_ACK); channel.write(command); } public int addEditor(REPSocketChannel<REPCommand> channel, REPCommand repCmd) { numberOfEditor++; editorList.add(new Editor(numberOfEditor, channel)); return numberOfEditor; } public void addEditor(REPSocketChannel<REPCommand> channel) { editorList.add(new Editor(0, channel)); } public void setEID(REPCommand repCmd) { for(Editor editor : editorList){ if(editor.getEID() == 0){ editor.setEID(repCmd.eid); break; } } } private void error(Object obj) { if(obj == null){ System.out.println("null!"); } } private void error(String str1, String str2){ if(str1.equals(str2)){ return; }else{ System.out.println("Not equals! str1:str2"); } } public void sendPutAck(REPSocketChannel<REPCommand> channel, REPCommand repCmd) { channel.write(repCmd); } public void send(REPSocketChannel<REPCommand> channel, REPCommand command){ channel.write(command); } public void setHost(String myHost) { // TODO Auto-generated method stub for(Editor editor : editorList) { editor.setHost(myHost); } } public Editor getEditor(String hostport) { // TODO Auto-generated method stub for(Editor editor : editorList){ String[] splited = hostport.split(":"); System.out.println(splited[0] + "," + editor.getHost()); if(splited[0].equals(editor.getHost())){ return editor; } //String hostandport = editor.getHost() + ":" + editor.getPort(); //if(hostport.equals(hostandport)){ // return editor; //} } return null; } public int addEditor(Editor editor) { numberOfEditor++; editorList.add(editor); return numberOfEditor; } public Editor getEditor(REPSocketChannel<REPCommand> channel) { // TODO Auto-generated method stub Editor editor1 = null; for(Editor editor: editorList){ if(channel == editor.getChannel()){ editor1 = editor; } } return editor1; } }