Mercurial > hg > RemoteEditor > REPSessionManager
diff rep/RoutingTable.java @ 369:7d21eb209e27
*** empty log message ***
author | kono |
---|---|
date | Tue, 21 Oct 2008 20:37:05 +0900 |
parents | 1bde894edd83 |
children | 4b87f89b3afd |
line wrap: on
line diff
--- a/rep/RoutingTable.java Tue Oct 21 20:11:09 2008 +0900 +++ b/rep/RoutingTable.java Tue Oct 21 20:37:05 2008 +0900 @@ -6,9 +6,14 @@ public class RoutingTable { HashMap<Integer,Forwarder> sessionManagers =new HashMap<Integer,Forwarder>(); + SessionManager manager; // we don't need this, but we keep it because it is easy. // editor can be reached using this routing table. + public RoutingTable(SessionManager sessionManager) { + manager = sessionManager; + } + public void add(Forwarder forwarder, int smid) { if (smid>0) sessionManagers.put(smid, forwarder) ; } @@ -24,7 +29,9 @@ } public Forwarder toSessionManager(int eid) { - return sessionManagers.get(eid); + Forwarder next = sessionManagers.get(eid); + if (next==null) return manager.smList.parent(); + return next; } }