//////////////////////////////////////////////////////////
// Einfache Client-Implementierung
//

import java.net.*;
import java.io.*;

public class SimpleClient 
{
  public static void main (String args[])
  {
    //////////////////////////////////////////////////////////
    // Zu wenig Parameter
    //
    if (args.length<2)
        System.out.println("SimpleClient <IP> <PORT>"); else

    //////////////////////////////////////////////////////////
    // Verbindung herstellen
    //
    try
    {
      Socket sock = new Socket (args[0],Integer.parseInt(args[1]));

      PrintWriter    pw     = new PrintWriter   (sock.getOutputStream(),true);
      BufferedReader br     = new BufferedReader(new InputStreamReader(sock.getInputStream()));
      BufferedReader userIn = new BufferedReader(new InputStreamReader(System.in));

      String userInput    = "";
      String serverOutput = "";

      //////////////////////////////////////////////////////////
      // Der Server gibt nach dem Verbindungsaufbau ein
      // ein Signal von sich. Dies wird eingelesen.
      // Die anschließende Eingabe des Benutzers über die
      // Konsole wird an JavaChess gesendet, es erfolgt
      // eine Rückmeldung, u.s.w. Quit beendet die Verbindung.
      //
      while (!userInput.toUpperCase().equals("QUIT"))
      {
        serverOutput=br.readLine();

        if (serverOutput==null) break; 
                           else System.out.println(serverOutput);

        userInput=userIn.readLine(); pw.println(userInput);
      }

      //////////////////////////////////////////////////////////
      // Verbindung abbbauen
      //
      br.close();
      pw.close();
      sock.close();
    }
    catch (UnknownHostException e) { System.out.println(        "Unbekannter Host."); }
    catch (IOException          e) { System.out.println("Fehler bei I/O-Operation."); }
  }
}
