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;
 	}
 
 }