From 0e3c9ce4c7b030792cbbf6e553f39e395625b370 Mon Sep 17 00:00:00 2001 From: Minh VU Date: Mon, 3 Feb 2025 14:01:15 +0100 Subject: [PATCH] Fini ClientHandlerChar Ajouter la classe et ca marche --- .../fr/istic/pr/echo/ClientHandlerChar.java | 37 +++++++++++++++++++ .../java/fr/istic/pr/echo/EchoServer.java | 2 +- 2 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 src/main/java/fr/istic/pr/echo/ClientHandlerChar.java diff --git a/src/main/java/fr/istic/pr/echo/ClientHandlerChar.java b/src/main/java/fr/istic/pr/echo/ClientHandlerChar.java new file mode 100644 index 0000000..579d1b9 --- /dev/null +++ b/src/main/java/fr/istic/pr/echo/ClientHandlerChar.java @@ -0,0 +1,37 @@ +package fr.istic.pr.echo; + +import java.io.*; +import java.net.Socket; + +public class ClientHandlerChar implements ClientHandler { + private Socket socket; + + public ClientHandlerChar(Socket socket){ + this.socket = socket; + } + + @Override + public void handle() { + try { + //Lecture + InputStreamReader isr = new InputStreamReader(socket.getInputStream()); + BufferedReader in = new BufferedReader(isr); + String message; + while (((message = in.readLine())) != null) { + System.out.println(message); + } + + //Ecrire + OutputStreamWriter osw = new OutputStreamWriter(socket.getOutputStream()); + PrintWriter out = new PrintWriter(osw, true); + }catch (IOException e){ + System.out.println(e.getMessage()); + }finally { + try{ + socket.close(); + }catch (IOException e){ + System.out.println(e.getMessage()); + } + } + } +} diff --git a/src/main/java/fr/istic/pr/echo/EchoServer.java b/src/main/java/fr/istic/pr/echo/EchoServer.java index f5d2c7e..e6ce623 100644 --- a/src/main/java/fr/istic/pr/echo/EchoServer.java +++ b/src/main/java/fr/istic/pr/echo/EchoServer.java @@ -20,7 +20,7 @@ class echoServer { 3. appeler la méthode handleBytes() sur le handler */ Socket socket = serverSocket.accept(); - ClientHandler clientHandler= new ClientHandlerBytes(socket); + ClientHandler clientHandler= new ClientHandlerChar(socket); clientHandler.handle(); socket.close(); }