Mercurial > hg > RemoteEditor > REPSessionManager
view rep/EditorList.java @ 358:034acadc0cdc
*** empty log message ***
author | kono |
---|---|
date | Sun, 19 Oct 2008 16:54:37 +0900 |
parents | b18c24dcc5d2 |
children | 65c6d12a5835 |
line wrap: on
line source
package rep; import java.util.HashMap; public class EditorList extends HashMap<Integer,Editor> { /** * */ private static final long serialVersionUID = 1L; private int eid_root=0; private HashMap<Integer,Editor> waiting= new HashMap<Integer,Editor>(); public void addWaitingEditor(Editor fw) { waiting.put(fw.getEID(),fw); } public void add(Editor fw) { put(fw.getEID(),fw); } public void assignSessionManagerIDtoWaitingSM(int eid) { // 待っていたEditorを登録する。 // に登録する。この後、EditorのPUT/JOINに従って、ACKを送り、EID // を確定する。 Editor waiter; if ((waiter=waiting.remove(eid))!=null) { put(eid,waiter); return; } assert false; } public int newEid() { return ++eid_root; } public boolean waiting(Editor editor) { return waiting.containsKey(editor.getEID()); } public boolean hasEid(int eid) { return containsKey(eid); } }