Skip to content

Commit

Permalink
Rooms now start after creation.
Browse files Browse the repository at this point in the history
  • Loading branch information
Kait0u committed Jun 18, 2024
1 parent 8de9863 commit 2d1180b
Showing 1 changed file with 13 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,8 @@ public class MultiDrawServer {
private final Set<User> users;
private final Set<Room> rooms;
private final Map<String, Room> nameRoomMap;
private Queue<Socket> toBeUsers;
private final Map<Room, Thread> roomThreadMap;
private final Queue<Socket> toBeUsers;

public MultiDrawServer(int port) {
this.port = port;
Expand All @@ -32,6 +33,7 @@ public MultiDrawServer(int port) {
}
this.rooms = new HashSet<>();
this.nameRoomMap = new HashMap<>();
this.roomThreadMap = new HashMap<>();
this.users = new HashSet<>();
this.toBeUsers = new ConcurrentLinkedQueue<>();
}
Expand Down Expand Up @@ -71,7 +73,7 @@ private void assignUser() {

while (nickname == null || roomName == null) {
ClientMessage message = user.receiveMessage();
logClientMessage(message);
logClientMessage(socket.getInetAddress(), message);

switch (message.getClientCommand()) {
case SET_NICKNAME -> nickname = new String(message.getPayload());
Expand Down Expand Up @@ -117,6 +119,14 @@ private Room createRoom(String name) {

log.info(new StringBuilder("Room ").append(name).append(" has been created"));

Thread roomThread = new Thread(room);
synchronized (roomThreadMap) {
roomThreadMap.put(room, roomThread);
}

roomThread.start();
log.info(new StringBuilder("Room ").append(name).append(" has started execution!"));

return room;
}

Expand All @@ -126,7 +136,7 @@ private void logClientMessage(ClientMessage message) {
}

private void logClientMessage(InetAddress address, ClientMessage message) {
log.info(new StringBuilder("[").append(address.toString()).append("] Message received:").append(message.getClientCommand().name()).append(" ")
log.info(new StringBuilder("[").append(address.toString()).append("] Message received: ").append(message.getClientCommand().name()).append(" ")
.append(new String(message.getPayload())));
}

Expand Down

0 comments on commit 2d1180b

Please sign in to comment.