import java.io.*;
import java.net.*;
import java.util.*;

/**
 * An example of receiving a serialized object over the Internet
 * using TCP.
 *
 * @author  Prof. David Bernstein, James Madison University
 * @version 1.0
 */
public class CourseDatabaseClient
{

    public static void main(String[] args)
    {
       Course               course;
       CourseDatabase       db;
       Iterator<Course>     i;
       InetAddress          ip;
       Socket               s;
       ObjectInputStream    in;

       try 
       {
          ip = InetAddress.getByName("localhost");
          s = new Socket(ip, 9100);
          in = new ObjectInputStream(s.getInputStream());

          db = (CourseDatabase)in.readObject();
          in.close();
          s.close();

          i = db.iterator();
          while (i.hasNext()) 
          {
             course = i.next();
             System.out.println(course.getDesignation()+"\t"+
                                course.getTitle());
          }
       } 
       catch (Exception ex) 
       {
          ex.printStackTrace();
       }
    }
}
