Skip to content
Snippets Groups Projects
Commit 9c26ce48 authored by Yassine El Anzi's avatar Yassine El Anzi
Browse files

Upload New File

parent ff30a5a9
No related branches found
No related tags found
No related merge requests found
package thread;
import server.Serveur;
import java.io.*;
import java.net.*;
public class ThreadClient extends Thread {
private Socket socket;
private PrintWriter out;
public ThreadClient(Socket socket) {
this.socket = socket;
}
@Override
public void run() {
try {
BufferedReader entrant = new BufferedReader(new InputStreamReader(socket.getInputStream()));
out = new PrintWriter(socket.getOutputStream(), true);
String pseudonyme = entrant.readLine();
while (!Serveur.addPseudonym(pseudonyme)) {
out.println("Pseudonyme déjà utilisé. Veuillez en choisir un autre.");
pseudonyme = entrant.readLine();
}
out.println("Pseudonyme accepté!");
String message;
while (true) {
message = entrant.readLine();
if (message.startsWith("exit")) {
Serveur.diffuserMessage(pseudonyme , socket, true);
this.socket.close(); // Close the socket for this client
break;
}
Serveur.diffuserMessage(pseudonyme + ": " + message, socket, false);
}
} catch (SocketException e) {
System.out.println("Un client a perdu la connexion.");
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment