66 lines
1.6 KiB
Java
66 lines
1.6 KiB
Java
|
/*
|
||
|
* To change this template, choose Tools | Templates
|
||
|
* and open the template in the editor.
|
||
|
*/
|
||
|
package pm.Client;
|
||
|
|
||
|
import eric.GUI.palette.PaletteManager;
|
||
|
import eric.JZirkelCanvas;
|
||
|
import java.io.BufferedReader;
|
||
|
import java.io.IOException;
|
||
|
import java.io.InputStreamReader;
|
||
|
import java.io.PrintWriter;
|
||
|
import java.net.Socket;
|
||
|
import rene.zirkel.ZirkelCanvas;
|
||
|
|
||
|
/**
|
||
|
*
|
||
|
* @author PM
|
||
|
*/
|
||
|
public class Communication implements Runnable {
|
||
|
|
||
|
private Socket socket = null;
|
||
|
private PrintWriter out = null;
|
||
|
private BufferedReader in = null;
|
||
|
private ClientNetworkTools cnt = null;
|
||
|
|
||
|
public Communication (Socket socket) {
|
||
|
this.socket = socket;
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public void run() {
|
||
|
try {
|
||
|
cnt = new ClientNetworkTools(this);
|
||
|
ZirkelCanvas zc = JZirkelCanvas.getCurrentZC();
|
||
|
zc.add(cnt);
|
||
|
zc.set_cnt(cnt);
|
||
|
zc.repaint();
|
||
|
zc.init_cnt();
|
||
|
PaletteManager.setSelected_with_clic("move", true);
|
||
|
|
||
|
out = new PrintWriter(socket.getOutputStream());
|
||
|
in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
|
||
|
|
||
|
new Thread(new Reception(in, cnt, this)).start();
|
||
|
} catch (IOException e) {
|
||
|
cnt.doClose();
|
||
|
close();
|
||
|
System.out.println("Erreur de communication (com_client)");
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public void send(String msg){
|
||
|
out.println(msg+"END_MESSAGE");
|
||
|
out.flush();
|
||
|
}
|
||
|
|
||
|
public void close(){
|
||
|
send("<End>\n");
|
||
|
out.close();
|
||
|
try {
|
||
|
//socket.close();
|
||
|
in.close();
|
||
|
} catch (IOException ex) {}
|
||
|
}
|
||
|
}
|