From 8b01d7881996f6b25923a8883fec04c9f4997f71 Mon Sep 17 00:00:00 2001 From: Fateme Azizi Date: Mon, 22 Jun 2026 02:43:02 +0330 Subject: [PATCH] implement ServerListener.java --- .../chat/Client/ServerListener.java | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/main/java/com/university/chat/Client/ServerListener.java b/src/main/java/com/university/chat/Client/ServerListener.java index b609d74..e38e58f 100644 --- a/src/main/java/com/university/chat/Client/ServerListener.java +++ b/src/main/java/com/university/chat/Client/ServerListener.java @@ -1,9 +1,19 @@ package com.university.chat.Client; +import com.university.chat.Common.ChatMessage; +import com.university.chat.Common.FileMessage; + +import java.io.ObjectInputStream; + public class ServerListener implements Runnable{ // TODO: store the ObjectInputStream from the user socket // (this should be the same input stream the // chatClient created when connecting) + private ObjectInputStream inputStream; + + public ServerListener(ObjectInputStream inputStream) { + this.inputStream = inputStream; + } @Override public void run() { @@ -13,6 +23,16 @@ public class ServerListener implements Runnable{ // - if it's a FileMessage -> print that a file was received // (filename + sender), it's already // saved to disk by the server. + while (true) { + Object object = inputStream.readObject(); + + if(object instanceof ChatMessage) { + System.out.println(((ChatMessage) object).getSender() + ": " + ((ChatMessage) object).getContent()); + } + else if(object instanceof FileMessage) { + System.out.println("File received: " + ((FileMessage) object).getFilename() + " from " + ((FileMessage) object).getSender()); + } + } } catch (Exception e){ System.out.println("Disconnected from server"); }