-import java.util.concurrent.ThreadLocalRandom;
+import java.io.*;
public class ThreadClientReceive implements Runnable {
private SocketClient client;
- private String msg = new String();
ThreadClientReceive(SocketClient c) {
client = c;
}
- /**
- * @return the msg
- */
- public String getMsg() {
- return msg;
- }
-
public void run() {
- while (true) {
- try {
- msg = client.receiveMsg();
- System.out.println (Thread.currentThread().getName() + " a recu " + msg);
- try {
- Thread.sleep(ThreadLocalRandom.current().nextInt(101));
- }
- catch (InterruptedException e) {
- System.err.println("InterruptedException: " + e);
- }
- }
- catch (Exception e) {
- System.err.println("Exception: " + e);
+ try {
+ boolean end = false;
+ //FIXME: not exiting properly randomly from that loop!
+ while (!end) {
+ String rline = client.receiveMsg();
+ if (rline.equals(".")) {
+ end = true;
+ }
+ System.out.println(Thread.currentThread().getName() + " a recu " + rline);
}
}
+ catch (IOException e) {
+ System.err.println("IOException: " + e);
+ e.printStackTrace();
+ }
}
}