import java.net.*;
import java.io.*;

/** La réalisation d'un client.
 * Voir son <a href="Client.java.html">code source</a>.
 * @author Jean-Baptiste Yunès
 */
public class Client {
  /** Le numéro du port du service. */
  public static final int PORT = 11111;
  /** Le code principal du client.
   * Si un argument existe en ligne de commande, on l'utilise comme nom ou
   * adresse Internet du serveur où se connecter, <code>localhost</code>
   * sinon.
   */
  public static void main(String []arguments) {
    try {
      String serveurHostname = arguments.length>0?arguments[0]:"localhost";
      Socket service = new Socket(serveurHostname,PORT);
      PrintWriter pw = new PrintWriter(new OutputStreamWriter(service.getOutputStream()));
      pw.println(arguments[0]);
      pw.flush();
      BufferedReader bf = new BufferedReader(new InputStreamReader(service.getInputStream()));
      String message = bf.readLine();
      System.out.println("Je viens de recevoir le message : "+message);
      pw.close(); bf.close(); service.close();
    } catch(Exception e) {
      System.err.println("Erreur sérieuse : "+e);
      e.printStackTrace(); System.exit(1);
    }
  }
}