diff --git a/src/main/java/com/university/chat/Server/ChatServer.java b/src/main/java/com/university/chat/Server/ChatServer.java index b2a35ae..e397097 100644 --- a/src/main/java/com/university/chat/Server/ChatServer.java +++ b/src/main/java/com/university/chat/Server/ChatServer.java @@ -1,15 +1,24 @@ package com.university.chat.Server; +import java.net.ServerSocket; +import java.net.Socket; + public class ChatServer { - // TODO: declare a single shared UserManager instance (static final) - // This MUST be shared by all ClientSession threads so that - // broadcasting and private messaging work correctly. + + private static final UserManager userManager = new UserManager(); public static void main(String[] args) { - // TODO: Create a ServerSocket + try { + ServerSocket serverSocket = new ServerSocket(5000); - // TODO: In an infinite loop: - // accept an incoming client connection - // make a new thread running ClientSession for each user. + while (true) { + Socket socket = serverSocket.accept(); + ClientSession session = new ClientSession(socket, userManager); + new Thread(session).start(); + } + + } catch (Exception e) { + e.printStackTrace(); + } } -} +} \ No newline at end of file