@Override public final void disposeComponent() { dispose(); }
@Override public void dispose() { if (isDisposed()) { return; } super.dispose(); final Collection<ClientConfigRoot> configs; synchronized (registeredClients) { // need a copy of the values, otherwise they'll be cleared when we // clear the registered configs. configs = new ArrayList<>(registeredRoots.values()); registeredClients.clear(); } System.err.println("Starting config loop"); for (ClientConfigRoot clientConfig : configs) { System.err.println("Call on " + clientConfig); sendClientRemoved(clientConfig); } }