import javax.swing.JTextField;
import javax.swing.ScrollPaneConstants;
-import java.io.IOException;
/**
* Applications réparties
private JTextArea entrants;
private JTextField sortants;
private ArrayList<String> sendMessages;
- private SocketClient socketCl;
IHM() {
sendMessages = new ArrayList<String>();
- socketCl = new SocketClient();
}
public void go() {
this.notify();
}
- synchronized public void getAndSendNextMessage() {
+ synchronized public String getNextMessageToSend() {
try {
if (sendMessages.isEmpty())
this.wait();
e.printStackTrace();
}
String mess = (String)sendMessages.remove(0);
- //System.out.println("IHM -> message a envoyer : " + mess);
- socketCl.sendMsg(mess);
+ System.out.println("IHM -> message a envoyer : " + mess);
+ return mess;
}
- public void writeMessage() throws IOException {
- String mess = socketCl.receiveMsg();
- //System.out.println("IHM -> message a ecrire : " + mess);
+ public void writeMessage(String mess) {
+ System.out.println("IHM -> message a ecrire : " + mess);
entrants.append(mess + "\n");
}
- public void close() {
- socketCl.closeRWIO();
- }
-
- public static void main (String[] args) {
- IHM client = new IHM();
- try {
- client.go();
- while (true) {
- client.getAndSendNextMessage();
- client.writeMessage();
- }
- }
- catch (IOException e) {
- System.err.println("IOException : " + e);
- e.printStackTrace();
- }
- finally {
- client.close();
- }
- }
-
} // fin classe SimpleClientDiscussion