/* CMSI 698, Spring 2003, Craig E. Ward, Kholoud Khateeb */
public class AnnoyingHttp {
    private static String codes[] = {"100","101","201","202","203","204","205",
      "206","300","301","302","303","304","305","306","307","400","401","402",
      "403","404","405","406","407","408","409","410","411","412","413","414",
      "415","416","417","500","501","502","503","504","505"};
    public static void main(String argv[]) throws Exception {
        java.util.Random rg = new java.util.Random(System.currentTimeMillis());
        java.net.ServerSocket listener = new java.net.ServerSocket(8089);
        try { while (true) {
                java.net.Socket client = listener.accept();
                java.io.PrintWriter out = new java.io.PrintWriter(client.getOutputStream(),true);
                out.println("HTTP/1.1 " + codes[rg.nextInt(codes.length)] + 
                            "\r\nServer: Annoying (Java)\r\nConnection: close\r\n");
                client.close();
            }
        } finally { listener.close(); }
    }
} // end class AnnoyingHttp
