traffic
Class UDPServer

java.lang.Object
  |
  +--java.lang.Thread
        |
        +--traffic.UDPServer
All Implemented Interfaces:
java.lang.Runnable

public class UDPServer
extends java.lang.Thread


Field Summary
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
UDPServer(int srcPort, int receiveBufferSize, int sendBufferSize, UDPSocketReader reader, int receivedPacketBufferSize)
          Constructeur -> creation du ServerSocket
 
Method Summary
 void fermetureServeur()
          Methode pour arreter le serveur UDP: stopServer
 boolean fileMessageConnexionVide()
          Indique si il y a un message concernant l'état de la connexion dans la file.
 java.lang.String getPremierMessageConnexion()
          Récupère le premier message concernant l'état de la connexion.
 SocketEcriture getThreadEcriture(int n)
          Renvoit le Thread associé à l'écriture sur le socket d'une connexion.
 SocketLecture getThreadLecture(int n)
          Renvoit le Thread associé à la lecture sur le socket d'une connexion.
static void main(java.lang.String[] args)
          Methode: Main pour tester la classe
 int nbConnection()
           
 void putApplicationMessage(java.lang.String message)
           
 void run()
          Methode run() de la classe Thread.
Attend la connexion des clients.
 void setScenarioFile(java.lang.String fileName)
           
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getContextClassLoader, getName, getPriority, getThreadGroup, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setName, setPriority, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

UDPServer

public UDPServer(int srcPort,
                 int receiveBufferSize,
                 int sendBufferSize,
                 UDPSocketReader reader,
                 int receivedPacketBufferSize)
Constructeur -> creation du ServerSocket

Parameters:
srcPort - Port sur lequel le serveur va attendre des connexions
receiveBufferSize - Taille du buffer de réception des datagrammes
receivedPacketBufferSize - Taille du buffer pour la réception de paquets
Method Detail

run

public void run()
Methode run() de la classe Thread.
Attend la connexion des clients. A chaque arrivée d'un nouveau client, elle lui dedie un DatagramSocket (i.e un port de la machine) auquel il pourra se "connecter".

Specified by:
run in interface java.lang.Runnable
Overrides:
run in class java.lang.Thread

fermetureServeur

public void fermetureServeur()
Methode pour arreter le serveur UDP: stopServer


getThreadLecture

public SocketLecture getThreadLecture(int n)
Renvoit le Thread associé à la lecture sur le socket d'une connexion.

Parameters:
n - le numéro de la connexion
Returns:
le Thread de lecture

getThreadEcriture

public SocketEcriture getThreadEcriture(int n)
Renvoit le Thread associé à l'écriture sur le socket d'une connexion.

Parameters:
n - le numéro de la connexion
Returns:
le Thread d'écriture

nbConnection

public int nbConnection()

getPremierMessageConnexion

public java.lang.String getPremierMessageConnexion()
Récupère le premier message concernant l'état de la connexion.
ATTENTION: il faut tester si la file est vide avant d'appeler cette méthode. Si la file est vide, une exception FileVideException est levée.

Returns:
une chaîne de caractères

fileMessageConnexionVide

public boolean fileMessageConnexionVide()
Indique si il y a un message concernant l'état de la connexion dans la file.

Returns:
un booléen

setScenarioFile

public void setScenarioFile(java.lang.String fileName)
                     throws java.io.FileNotFoundException
java.io.FileNotFoundException

putApplicationMessage

public void putApplicationMessage(java.lang.String message)

main

public static void main(java.lang.String[] args)
                 throws java.io.IOException
Methode: Main pour tester la classe

java.io.IOException