Main.java

package fr.umlv.ji.tcp.server.ftp;
import java.util.prefs.*;
import java.util.logging.*;
import fr.umlv.ji.tcp.server.*;
import java.net.*;
import java.io.*;
/**
 * Serveur concurrent à nombre de processus légers fixé pour FTP.
 * Met en oeuvre le service défini par la classe FTPService.
 */
public class Main {
  /** Port par défaut. */
  protected final static int DEFAULT_PORT = 2121;
  /** Méthode de démarrage du serveur FTP. */
  public static void main(String[] args) {
    // Récupération du journaliseur
    Logger logger =
      Logger.getLogger("fr.umlv.ji.tcp.server.ftp.Main");
    try {
      // Récupération des préférences utilisateur
      Preferences prefs = Preferences
    .userNodeForPackage(fr.umlv.ji.tcp.server.ftp.Main.class);
      // Création du serveur 
      BoundConcurrent server = new BoundConcurrent(logger,prefs);
      // Création du service
      server.setService(new FTPService(server));
      // Affection de l'adresse d'attachement du serveur
      InetSocketAddress localAddress =
    new InetSocketAddress(prefs.getInt("port",DEFAULT_PORT));
      server.setLocalAddress(localAddress);
      // Démarrage du serveur
      server.launch();
    } catch (Exception e) {
      logger.log(Level.SEVERE,"Erreur au démarrage du serveur",e);
      System.err.println("Erreur au démarrage du serveur :");
      e.printStackTrace(System.err);
    }
  }
}