server.core
Class TCPConnection
java.lang.Object
java.lang.Thread
common.StoppableThread
common.TransfertSlave
common.TCPHandler
server.core.TCPConnection
- All Implemented Interfaces:
- Runnable
public class TCPConnection
- extends TCPHandler
Gère la connexion TCP avec le client.
Lors de la création, le connexion est initialisée et les flux E/S ouverts. Ce
gestionnaire assure aussi l'initialisation du transfert avec le client.
Ensuite, lorsque le thread est démarré, celui-ci attend des commandes du
client et les traite si nécessaire.
|
Method Summary |
void |
doQuit()
Fait fermer le thread en arrêtant la connexion TCP. |
void |
finalizeTransfert(boolean success)
Finalise un transfert réussi ou échoué. |
void |
requestOffset(long offset)
Demande au client le renvoi d'un paquet perdu. |
void |
run()
Méthode principale du thread. |
| Methods inherited from class java.lang.Thread |
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield |
handler
private final TransfertHandler handler
- Gestionnaire de transfert.
TCPConnection
public TCPConnection(TransfertMaster master,
TransfertHandler handler,
Socket tcpSocket)
throws SocketStartFailure
- Initialise le transfert avec le client lors d'une nouvelle connexion.
- Parameters:
master - objet maître.handler - gestionnaire de transfert.tcpSocket - connexion TCP d'un nouveau client.
- Throws:
SocketStartFailure - si une erreur survient lors de l'initialisation du transfert.
finalizeTransfert
public void finalizeTransfert(boolean success)
- Finalise un transfert réussi ou échoué.
- Parameters:
success - succès du transfert (vrai si le transfert à réussi).
doQuit
public void doQuit()
- Fait fermer le thread en arrêtant la connexion TCP.
- Overrides:
doQuit in class StoppableThread
- See Also:
Thread.run(),
StoppableThread.quitQuery,
StoppableThread.quit()
requestOffset
public void requestOffset(long offset)
- Demande au client le renvoi d'un paquet perdu.
- Parameters:
offset - offset du paquet à renvoyer.
run
public void run()
- Méthode principale du thread. Traite les commandes du client.
- Specified by:
run in interface Runnable- Overrides:
run in class Thread