@Override
    public void stopService() {
        for (Communicator comm : clients.getClients()) {
            try {
                comm.sendData(new Message(GlobalConstants.ID_SYS_MSG, SystemMessageHeaders.LOGOUT, null));
            } catch (ConnectionException ex) {
                LOG.warning("Client connection timed out.");
            }
        }

        if (cdd != null) {
            try {
                cdd.stopService();
            } catch (Exception ex) {
                // error closing some resource, ignore
            }
        }

        try {
            jobManager.stopService();
        } catch (Exception ex) {
            // error closing some resource, ignore
        }
        try {
            serverSocket.stopService();
        } catch (Exception ex) {
            // error closing some resource, ignore
        }

        LOG.fine("Server has been stopped.");
    }