Add all 23 GoF design pattern implementations (2026-06-13)

This commit is contained in:
Ankur
2026-06-13 21:44:56 +05:30
commit a5beb61425
106 changed files with 2977 additions and 0 deletions

View File

@@ -0,0 +1,27 @@
package mediator;
import java.util.ArrayList;
import java.util.List;
/**
* Concrete Mediator — the chat room that routes messages between users.
* Users talk to ChatRoom; ChatRoom talks to users. Nobody else talks to anybody.
*/
public class ChatRoom implements ChatMediator {
private final List<User> users = new ArrayList<>();
@Override
public void addUser(User user) {
users.add(user);
System.out.println(" [ChatRoom] " + user.getName() + " joined the room");
}
@Override
public void sendMessage(String message, User sender) {
for (User user : users) {
if (user != sender) { // don't echo back to sender
user.receive(message, sender.getName());
}
}
}
}