package main;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.Socket;
import java.util.Scanner;

public class Appli {
	public static void main(String[] args) {
		try {
			// Ouverture du flux std:in
			Scanner clavier = new Scanner(new InputStreamReader(System.in));

			// Récupération des paramètres de la connexion
			System.out.println("Entrez l'URL : ");
			String url = clavier.nextLine();
			String[] params = url.split(":");
			String protocole = params[0];
			String host = params[1];
			int port = Integer.parseInt(params[2]);

			if (!protocole.equals("BTTP")) {
				throw new IllegalArgumentException("Mauvais protocole !");
			}

			Socket connexion = new Socket(host, port);
			boolean connecte = true;

			// Ouverture des flux
			BufferedReader networkIn = new BufferedReader(new InputStreamReader(connexion.getInputStream()));
			PrintWriter networkOut = new PrintWriter(new OutputStreamWriter(connexion.getOutputStream()), true);

			while (connecte) {
				// Récupération de la question du serveur
				System.out.println(networkIn.readLine());

				// Recupération du clavier
				System.out.println("Votre réponse : ");
				System.out.println("->");
				String input = clavier.nextLine();

				if (input.equals("stop")) {
					connecte = false;
					System.out.println("Déconnecté");
				} else {
					// Ecriture sur le réseau
					networkOut.println(input);
				}
			}
			connexion.close();
		} catch (Exception e) {
			e.printStackTrace();
		}

	}
}
