Mercurial > hg > RemoteEditor > REPSessionManager
diff rep/RoutingTable.java @ 367:1bde894edd83
*** empty log message ***
author | kono |
---|---|
date | Tue, 21 Oct 2008 18:46:04 +0900 |
parents | 034acadc0cdc |
children | 7d21eb209e27 |
line wrap: on
line diff
--- a/rep/RoutingTable.java Mon Oct 20 17:58:02 2008 +0900 +++ b/rep/RoutingTable.java Tue Oct 21 18:46:04 2008 +0900 @@ -8,37 +8,21 @@ HashMap<Integer,Forwarder> sessionManagers =new HashMap<Integer,Forwarder>(); // we don't need this, but we keep it because it is easy. // editor can be reached using this routing table. - HashMap<Integer,Forwarder> sessionTable =new HashMap<Integer,Forwarder>(); - // session may have multiple forward, if so we have a session - // here. So we don't have to keep multiple session, just keep - // one. - public void add(Forwarder forwarder, int smid, int sid) { + public void add(Forwarder forwarder, int smid) { if (smid>0) sessionManagers.put(smid, forwarder) ; - if (sid>0) sessionTable.put(sid, forwarder) ; } public void remove(Forwarder f) { for(Entry<Integer, Forwarder> entry:sessionManagers.entrySet()) { if (entry.getValue()==f) sessionManagers.remove(entry.getKey()); } - for(Entry<Integer, Forwarder> entry:sessionTable.entrySet()) { - if (entry.getValue()==f) sessionTable.remove(entry.getKey()); - } - } - - public void removeSession(int sid) { - sessionTable.remove(sid); } public void removeManager(int smid) { sessionManagers.remove(smid); } - public Forwarder toSession(int sid) { - return sessionTable.get(sid); - } - public Forwarder toSessionManager(int eid) { return sessionManagers.get(eid); }