public ServerHelper(
      StatusTracker statusTracker, DOF dof, DOFServer.Config serverConfig, int timeout) {
    log = LoggerFactory.getLogger(getClass());
    this.statusTracker = statusTracker;
    server = dof.createServer(serverConfig);

    restartingStateListener = new RestartingStateListener();
    restartingStateListener.setMinimumDelay(1000);
    restartingStateListener.setMaximumDelay(30000);
    //        server.addStateListener(restartingStateListener);
    server.addStateListener(this);
    server.beginStart(timeout);
  }
 public void destroy() {
   restartingStateListener.cancel();
   server.removeStateListener(restartingStateListener);
   server.removeStateListener(this);
   server.stop();
   server.destroy();
 }