public synchronized JRadiusSession newSession(JRadiusRequest request, Object key)
     throws RadiusException {
   JRadiusSession session =
       (JRadiusSession) getSessionFactory(request.getSender()).newSession(request);
   session.setJRadiusKey((String) key);
   put(session.getJRadiusKey(), session);
   put(session.getSessionKey(), session);
   lock(session);
   return session;
 }
 public synchronized void rehashSession(
     JRadiusSession session, Serializable okey, Serializable nkey) throws RadiusException {
   remove(okey);
   session.setJRadiusKey((String) nkey);
   put(session.getJRadiusKey(), session);
 }