public synchronized void setOwner(long id, Object owner) throws SessionExpiredException {
   SessionImpl session = sessionsById.get(id);
   if (session == null) {
     throw new KeeperException.SessionExpiredException();
   }
   session.owner = owner;
 }
 public synchronized void checkSession(long sessionId, Object owner)
     throws KeeperException.SessionExpiredException, KeeperException.SessionMovedException {
   SessionImpl session = sessionsById.get(sessionId);
   if (session == null) {
     throw new KeeperException.SessionExpiredException();
   }
   if (session.owner == null) {
     session.owner = owner;
   } else if (session.owner != owner) {
     throw new KeeperException.SessionMovedException();
   }
 }