+++ /dev/null
-import java.net.*;
-import java.io.*;
-import java.util.*;
-
-public class EchoServerThreadService implements Runnable {
-
- private Socket clientSocket;
- private ArrayList<PrintWriter> listWriter;
-
- EchoServerThreadService(Socket clientSocket) {
- System.out.println("Creation d'un thread pour repondre a un client, port " + clientSocket.getPort());
- this.clientSocket = clientSocket;
- }
-
- public void run() {
- try {
- doService(clientSocket);
- clientSocket.close();
- } catch (IOException e) {
- System.err.println("IOException : " + e);
- e.printStackTrace();
- }
- finally {
- try {
- if (this.clientSocket != null)
- this.clientSocket.close();
- } catch (IOException e) {
- System.err.println("IOException : " + e);
- e.printStackTrace();
- }
- }
- }
-
- public void doService(Socket clientSocket) throws IOException {
- BufferedReader in;
- PrintStream out;
- in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
- out = new PrintStream(clientSocket.getOutputStream());
- //listWriter.add(new PrintWriter(clientSocket.getOutputStream()));
- boolean end = false;
- while (!end) {
- String theLine = in.readLine();
- if (theLine.equals("."))
- end = true; // le thread de service doit terminer
- out.println(theLine);
- }
- System.out.println("Fin du thread repondant au client, port "
- + clientSocket.getPort());
- }
-
- public void broadcastMsg(String msg) {
- for (int i = 0; i < listWriter.size(); i++) {
- listWriter.get(i);
- }
-
- }
-
-}