/*
 * Fail Vork.java
 * author Jaanus Poial
 * version 0.2 
 */

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

public class Vork {

   public static void main(String[] parameetrid) throws Exception {

      //==================================================================
      // URL
      //==================================================================

      String s;
      if (parameetrid.length > 0)
         s = parameetrid [0];
         else s = "http://enos.itcollege.ee/";

      URL viide = new URL (s);
      System.out.println (" U R L  =  " + viide.toExternalForm());
      System.out.println ("Protocol = " + viide.getProtocol());
      System.out.println ("Host     = " + viide.getHost());
      System.out.println ("File     = " + viide.getFile());
      System.out.println ("Port     = " + viide.getPort());
      System.out.println ("Content  = " + viide.getContent());
      System.out.println ("Ref      = " + viide.getRef());
      System.out.println ("Sisu:");
      BufferedReader sisend = new BufferedReader
         (new InputStreamReader (viide.openStream()));
      String rida;
      while ((rida = sisend.readLine()) != null)
         System.out.println (rida);
      sisend.close();
      System.out.println();

      //=================================================================
      // socket
      //=================================================================

      Socket pistik = new Socket ("enos.itcollege.ee", 80);
      String teade = "GET / HTTP/1.0\n";
      InputStream sisse = pistik.getInputStream();
      BufferedReader svoog = new BufferedReader
         (new InputStreamReader (sisse));
      OutputStream valja = pistik.getOutputStream();
      PrintWriter vvoog = new PrintWriter
         (new OutputStreamWriter (valja), true);
      System.out.println ("Pistik: " + pistik.toString());
      System.out.println ("Teade: " + teade);
      vvoog.println (teade);
      while ((rida = svoog.readLine()) != null)
         System.out.println (rida);
      pistik.close();

   } // main lopp

} // Vork lopp

