import java.io.*; import java.lang.*; import java.net.*; import java.util.StringTokenizer; import LectureClavier.*; import Graphique.*; class TCPClient{ public static int pass; private Socket _clientSocket=null; private Envoi e; public TCPClient(String adress,int port){ try { _clientSocket = new Socket(adress, port); e=new Envoi(_clientSocket); } catch(IOException ex) { } } public Envoi get_e() { return e; } public Socket get_socket() { return _clientSocket; } public static void main(String argv[]) throws Exception { String sentence=null; String modifiedSentence; TCPClient tcpclient=new TCPClient("localhost",6789); Reception recpmess = new Reception(tcpclient.get_socket(),tcpclient); BufferedReader inFromUser = new BufferedReader(new InputStreamReader(System.in)); DataOutputStream outToServer = new DataOutputStream(tcpclient.get_socket().getOutputStream()); BufferedReader inFromServer = new BufferedReader(new InputStreamReader(tcpclient.get_socket().getInputStream())); if(tcpclient.get_socket().isConnected()) { outToServer.writeBytes("/getwelcomessage "+"\n"); } do { sentence = inFromUser.readLine(); outToServer.writeBytes(sentence + '\n'); } while (sentence.compareTo("bye") != 0); tcpclient.get_socket().close(); } } class Reception extends Thread { public Socket _clientSocket; public TCPClient _tcpc; public Reception(Socket clientSocket,TCPClient tc) { _clientSocket = clientSocket; _tcpc=tc; this.start(); } public void run() { try { String r=""; BufferedReader inFromServer = new BufferedReader(new InputStreamReader(_clientSocket.getInputStream())); String sentence; do { sentence = inFromServer.readLine(); if (sentence.compareTo("/welcomemessage Bienvenue ")==0) { _tcpc.get_e().start(); System.out.println("thread Envoi en action "+_tcpc.get_e().isAlive()); } } while (sentence.compareTo("bye") != 0); System.out.println(sentence); } catch (IOException ioe) { System.out.println("Acceptance Error: " + ioe); } } } class Envoi extends Thread{ BufferedReader inFromUser; DataOutputStream outToServer; String sentence=null; public Envoi(Socket so) { try{ inFromUser = new BufferedReader(new InputStreamReader(System.in)); outToServer = new DataOutputStream(so.getOutputStream()); } catch(IOException ioe){ } } public void run() { try{ Fenetrebienvenue fb =new Fenetrebienvenue(); String r1=null; String r ; do{ r1 = fb.get_texteTape(); sentence="/creermembre "+r1+"\n"; System.out.println(sentence); StringTokenizer st = new StringTokenizer(sentence,":",false); r = st.nextToken(); System.out.println("token "+r); System.out.println("comp token "+r.equals("/creermembre null")); if(r.equals("/creermembre null")==true) {try{ this.wait(); } catch(InterruptedException ie){} } else this.notify(); }while(r.equals("/creermembre null")==false); outToServer.writeBytes(sentence); } catch(IOException ioe){ } } public String get_sentence() { return sentence; } }