traffic
Class SocketEcriture

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

public class SocketEcriture
extends java.lang.Thread


Field Summary
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
SocketEcriture(java.net.DatagramSocket socket, FileAttenteSynchronisee messages, java.net.InetAddress adresseConnexion, int portConnexion)
          Création du buffer de lecture des datagrammes reçus par le socket.
 
Method Summary
 void demandeFermetureSocket()
          Permet d'effectuer une demande de fermeture du socket.
 boolean envoiPossible()
          Renvoit un booléen indiquant si l'envoi de message est possible.
Indique si le socket est en cours de fermeture ou si il est fermé.
 boolean estTerminé()
          Méthode permettant de savoir si le Thread est terminé.
 java.net.DatagramSocket getSocket()
          Renvoit le socket par lequel on envoie des datagrammes
 void messageAEnvoyer(java.lang.String message)
          Ajoute dans la file un message à envoyer.
 void run()
          Implantation de la méthode run de la classe Thread.
 
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

SocketEcriture

public SocketEcriture(java.net.DatagramSocket socket,
                      FileAttenteSynchronisee messages,
                      java.net.InetAddress adresseConnexion,
                      int portConnexion)
Création du buffer de lecture des datagrammes reçus par le socket.

Parameters:
socket - DatagramSocket sur lequel recevoir des datagrammes
messages - File de messages concernant la connexion
adresseConnexion - Adresse IP de la machine distante
portConnexion - Port de la machine distante
Method Detail

run

public void run()
Implantation de la méthode run de la classe Thread. Réception des datagrammes sur le socket.

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

messageAEnvoyer

public void messageAEnvoyer(java.lang.String message)
Ajoute dans la file un message à envoyer.
ATTENTION: il faut impérativement examiner si l'envoi est possible avant d'ajouter un message dans la file en appelant la méthode envoiPossible. Si vous ne le faites pas, une exception EnvoiImpossibleException est susceptible d'être levée.

Parameters:
message - le message sous forme de chaîne de caractères

getSocket

public java.net.DatagramSocket getSocket()
Renvoit le socket par lequel on envoie des datagrammes

Returns:
le socket

demandeFermetureSocket

public void demandeFermetureSocket()
Permet d'effectuer une demande de fermeture du socket.
ATTENTION: fermeture effective du socket une fois que tous les messages de la file sont envoyés.


envoiPossible

public boolean envoiPossible()
Renvoit un booléen indiquant si l'envoi de message est possible.
Indique si le socket est en cours de fermeture ou si il est fermé.
ATTENTION: il faut absolument appeler cette méthode avant d'ajouter un message dans la file.

Returns:
un booléen

estTerminé

public boolean estTerminé()
Méthode permettant de savoir si le Thread est terminé.

Returns:
un booléen