diff --git a/chat.java b/chat.java index 871b6fb..f1317b8 100644 --- a/chat.java +++ b/chat.java @@ -29,8 +29,12 @@ public class chat { } public synchronized void connect(String user, Consumer callback) { - announce(user + " arrived"); + for (Map.Entry> e : members.entrySet()) { + try { callback.accept(e.getKey() + " arrived"); } + catch (Exception ex) { disconnect(e.getKey()); } + } members.put(user, callback); + announce(user + " arrived"); } public synchronized void disconnect(String user) {