// -------------------------------------------------------------------
IoAcceptor acceptor = ( IoAcceptor ) requestor.getIoSession().getService();
List<IoSession> sessions = new ArrayList<IoSession>(
acceptor.getManagedSessions().values() );
GracefulShutdownRequest gsreq = ( GracefulShutdownRequest ) req;
// build the graceful disconnect message with replicationContexts
GracefulDisconnect notice = getGracefulDisconnect( gsreq.getTimeOffline(), gsreq.getDelay() );
// send (synch) the GracefulDisconnect to each client before unbinding
sendGracefulDisconnect( sessions, notice, requestor.getIoSession() );
// wait for the specified delay before we unbind the service
waitForDelay( gsreq.getDelay() );
// -------------------------------------------------------------------
// unbind the server socket for the LDAP service here so no new
// connections are accepted while we process this shutdown request
// note that the following must be issued before binding the ldap