// Netzwerk Verbindung
// Java in 21 Tagen Tag 18


import java.awt.*;
import java.awt.event.*;	// Teilpakete einzeln importieren
import java.net.*;
import java.io.*;

public class GetFile extends Frame implements Runnable
{
Thread runner;
URL page;
TextArea box = new TextArea ("Getting text ...");

public GetFile ()
{
super("Get File");
add (box);
try 
  {
   page=new URL("http://www.walter-digital.de/seminar/inhalt.html");
  }
  catch (MalformedURLException e) 
  {
  System.out.println("Bad URL: " + page);
  System.exit (1);
  }
}
public static void main (String[] args)
{
GetFile frame = new GetFile();

WindowListener l = new WindowAdapter()
  {
  public void indowClosing(WindowEvent e)
    {
    System.exit(0);
    }
  };

frame.addWindowListener(l);

frame.pack();
frame.setVisible(true);
if (frame.runner == null)
  {
  frame.runner = new Thread (frame);
  frame.runner.start();
  }
}

public void run()
{
URLConnection conn = null;
InputStreamReader in;
BufferedReader data;
String line;
StringBuffer buf = new StringBuffer();

try 
  {
  conn = this.page.openConnection();
  conn.connect();
  box.setText("Connection opened...");
  in = new InputStreamReader(conn.getInputStream() );
  data = new BufferedReader(in);
  box.setText ("Reading data ..");
  while ((line = data.readLine()) != null)
    {
    buf.append (line + "\n");
    }
  box.setText(buf.toString());
  }
catch ( IOException e) 
 {
  System.err.println("IO Error : " + e.getMessage() );
  System.exit(1);
  }
}

}
