public boolean start() {
        stopWaiting = false;
        if (startServerSocket()) {
            new Thread(new Runnable() {
                @Override
                public void run() {
                    waitForConnections();
                }
            }, "wait for connections").start();
            return true;
        }
        return false;
    }