|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.lang.Thread
ssbm.net.server.ServerEndpointThread
public class ServerEndpointThread
Questa classe si occupa della gestione di una connessione in arrivo dal client.
Riceve il messaggio di testo del client, lo analizza ed esegue il servizio richiesto.
In base al risultato ottenuto dall’esecuzione, costruisce un messaggio di testo di risposta e lo invia al client.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class java.lang.Thread |
---|
java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler |
Field Summary | |
---|---|
private BusinessDelegate |
bizDelegate
L'esemplare della classe che implementa l'interfaccia BusinessDelegate e costituisce il punto di accesso ai servizi del dominio. |
private java.nio.channels.SocketChannel |
clientChannel
Il canale socket utilizzato per lo scambio di messaggi con il client. |
Fields inherited from class java.lang.Thread |
---|
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY |
Constructor Summary | |
---|---|
ServerEndpointThread(java.nio.channels.SocketChannel client)
Costruisce un esemplare che gestisce la connessione supportata dal canale socket passato come parametro. |
Method Summary | |
---|---|
private java.lang.String |
buildReplyMessage(Services service,
Entities entity)
Costruisce il messaggio di risposta da inviare al client. |
private void |
handleConnection()
Gestisce la connessione con il client leggendo ed analizzando il messaggio inviato dal client ed inviando un appropriato messaggio di risposta. |
private java.lang.String |
handleRequest(java.lang.String request)
Analizza il messaggio di richiesta letto dal canale socket ed esegue il servizio richiesto. |
void |
run()
|
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 |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
private java.nio.channels.SocketChannel clientChannel
private BusinessDelegate bizDelegate
Constructor Detail |
---|
public ServerEndpointThread(java.nio.channels.SocketChannel client)
client
- il canale socket utilizzato per la comunicazione con il client.Method Detail |
---|
private void handleConnection() throws java.lang.Exception
java.lang.Exception
- se si verifica un errore nella lettura del messaggio inviato dal client,
nell'analisi del messaggio di richiesta, nell'esecuzione del servizio richiesto o nella
costruzione e nell'invio del messaggio di risposta.private java.lang.String handleRequest(java.lang.String request) throws java.lang.Exception
request
- il messaggio di richiesta inviato dal client.
java.lang.Exception
- se si verifica una delle seguenti condizioni:buildReplyMessage(Services, Entities)
private java.lang.String buildReplyMessage(Services service, Entities entity) throws NetException
service
- il valore dell'enumerazione Services che denota il servizio richiesto.entity
- il valore dell'enumerazione Entities che denota l'entità di riferimento.
NetException
- se si verifica un errore nella costruzione del messaggio di risposta.public void run()
run
in interface java.lang.Runnable
run
in class java.lang.Thread
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |