@@ -0,0 +1,2417 @@
+package default_package;%0A%0Aimport java.io.BufferedReader;%0Aimport java.io.BufferedWriter;%0Aimport java.io.IOException;%0Aimport java.io.InputStreamReader;%0Aimport java.io.OutputStreamWriter;%0Aimport java.io.PrintWriter;%0Aimport java.net.ServerSocket;%0Aimport java.net.Socket;%0A%0Apublic class Chat %7B%0A%09BufferedReader in; %0A%09PrintWriter outB;%0A%09Socket socket;%0A%09%0A%09/*%0A%09 * Constructeur.  Permet d'initialiser le chat en %C3%A9tablissant la %0A%09 * connection avec un interlocuteur situ%C3%A9 sur la m%C3%AAme machine. %0A%09 * @param isServer : si true, l'instance est un serveur et se met en attente d'une connexion%0A%09 * @port le num%C3%A9ro de port sur lequel %C3%A9tablir la connexion%0A%09 * @exception IOException s'il y a un probl%C3%A8me pendant l'%C3%A9tablissement de la connexion%0A%09 */%0A%09public Chat(boolean isServer, int port) throws IOException %7B%0A%09%09%09connect(isServer, port, %2210.99.0.87%22);%0A%09%09%0A%09%7D%0A%09%0A%09/*%0A%09 * Envoie le messages msg %C3%A0 l'interlocuteur%0A%09 * @param msg un message%0A%09 */%0A%09public void sendMessage(String msg) %7B%0A%09%09outB.println(msg);%0A%09%09%0A%09%7D%0A%0A%09/*%0A%09 * Attend le prochain message de l'interlocuteur%0A%09 * @return le message re%C3%A7u de l'interlocuteur%0A%09 * @exception IO Exception en cas d'erreur de transmission%0A%09 */%0A%09public String waitForMessage() throws IOException %7B%0A%09%09String str = in.readLine();%0A%09%09if(str.equals(%22END%22))%7B%0A%09%09%09System.out.println(%22Votre interlocuteur s'est d%C3%A9connect%C3%A9%22);%0A%09%09%09%0A%09%09%7D%0A        return str;%0A%09%7D%0A%09/*%0A%09 * Permet l'%C3%A9tablissement d'une connexion avec un h%C3%B4te distant%0A%09 * @param isServer : si true, l'instance est un serveur et se met en attente d'une connexion%0A%09 * @port le num%C3%A9ro de port sur lequel %C3%A9tablir la connexion%0A%09 * @addr si isServer est false, addr contient l'adresse du serveur %C3%A0 contacter%0A%09 * @exception IOException s'il y a un probl%C3%A8me pendant l'%C3%A9tablissement de la connexion%0A%09 */%0A%09public void connect(boolean isServer, int port, String addr) throws IOException%7B%0A%09%09if(isServer)%7B%0A%09%09%09ServerSocket s = new ServerSocket(port);%0A%09%09%09System.out.println(%22En attente de connexion...%22);%0A%09%09%09socket = s.accept();%0A%09%09%7D%0A%09%09else%7B%0A%09%09%09socket = new Socket(addr,port);%0A%09%09%7D%0A%09%09in = new BufferedReader(new InputStreamReader(socket.getInputStream()));%0A%09%09outB = new PrintWriter( new OutputStreamWriter(socket.getOutputStream()), true);%0A%09%09%0A%09%7D%0A%09/*%0A%09 * Ferme tous les flux d'une connexion %C3%A9tablie.%0A%09 * @exception IOException en cas d'erreur dans la fermeture de connexion%0A%09 */%0A%09public void closeConnection() throws IOException%7B%0A       in.close();%0A       outB.close();%0A%09%7D%0A%0A%7D%0A%0A%0A%0A

Create Chat.java