private synchronized void update() {
   if (kaTimeout > 0) {
     TimerDispatcher td = TimerDispatcher.getTimerDispatcher();
     if (kaTimer != null) {
       td.remove(kaTimer);
     }
     kaTimer = td.add(new Timer(System.currentTimeMillis() + kaTimeout, this));
   }
 }