//
// Télé discussion sur Internet - Classe Nettoyeur
//
// <http://cui.unige.ch/java/exemples>
//


import java.io.*;
import java.net.*;
import java.util.*;

class Nettoyeur extends Thread
{
  protected ServeurTD serveur;

  protected Nettoyeur(ServeurTD serveur)
  {
    this.serveur=serveur;
    this.start();
  } // Nettoyeur

  public synchronized void run()
  {
    while(true)  {
      try {
        this.wait(5000);
      } catch (InterruptedException e) {
      };

      synchronized(serveur.connexions) {
        for (int i=serveur.connexions.size()-1;i>=0;i--) {
          ConnexionTD c= (ConnexionTD) serveur.connexions.elementAt(i);
          if ( ! c.isAlive() ) {
            serveur.connexions.removeElementAt(i);
            System.out.println("Nettoyeur> Fin de connexion : OK");
          }
        }
      } // synchronized
    } // while
  }  // run

} // class Nettoyeur

