![]() |
L'objet Serveur est en fait
un programme qui s'éxécute puisqu'il dispose de la méthode
main(). Son rôle est d'instancier un serverSocket sur un port TCP
particulier pour ouvrire une porte de communication et de boucler infiniment
sur la socket, c'est à dire être l'écoute des notifications
susceptible de venir. Quand une requête arrive le Server instancie alors un ServerThread. Ce dernier objet dispose des objets RupHttpRequest et RupHttpResponse qui encapsule respectivement le flux d'entrée et le flux de sortie. Lors de l'instanciation du Thread la méthode run() est éxécutée. Cette derniere lance à son tour la méthode handleCmd() qui s'occupe de gérer correctement les entrées sorties. Chaque nouveau thread crée une nouvelle socket pour communiquer avec le client. Ainsi le serveur est une fraction de milisecondes indisponibles. |