
// ChatServer.java
// Andrew Davison, April 2005, ad@fivedots.coe.psu.ac.th
/*
   Diskusní server, který čeká na spojení klientů a pro jejich 
   obsluhu vytváří vlákna ChatServerHandler.
 
   Údaje o každém klientovi udržuje v objektu typu ChatGroup,
   na který se odkazuje každé vlákno.
*/

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


public class ChatServer
{
  static final int PORT = 1234;  // port tohoto serveru
  
  private ChatGroup cg;


  public ChatServer()
  // počká na spojení od klienta, vytvoří vlákno a proces opakuje
  {
    cg = new ChatGroup();
    try {
      ServerSocket serverSock = new ServerSocket(PORT);
      Socket clientSock;

      while (true) {
        System.out.println("Čekám na klienta...");
        clientSock = serverSock.accept();
        new ChatServerHandler(clientSock, cg).start();
      }
    }
    catch(Exception e)
    {  System.out.println(e);  }
  }  // konec metody: ChatServer()


  // -----------------------------------

  public static void main(String args[]) 
  {  new ChatServer();  }

} // konec třídy: ChatServer
