import java.net.*;
import java.io.*;
/** Cette classe réalise le concept de service.
* C'est-à-dire réalise la communication (i.e. le protocole) applicatif
* du serveur.
* Voir son <a href="Service.java.html">code source</a>.
* @author Jean-Baptiste Yunès
*/
public class Service implements Runnable {
private Socket service;
/** Le service nécessite une socket de service.
* param service la socket de service
*/
public Service(Socket service) {
this.service = service;
}
/** Le code du service. Son déroulé est :
* <ul>
* <li>attendre un message
* <li>s'endormir 5000ms
* <li>répondre
* <li>raccrocher
* </ul>
*/
public void run() {
try {
BufferedReader bf = new BufferedReader(new InputStreamReader(service.getInputStream()));
String qui = bf.readLine();
System.out.println(qui+" : vient de se connecter");
Thread.sleep(5000);
PrintWriter pw = new PrintWriter(new OutputStreamWriter(service.getOutputStream()));
pw.println("j'ai bien reçu ton message "+qui);
pw.close(); bf.close(); service.close();
} catch(Exception e) {
e.printStackTrace();
}
}
}