utility_ns
Class ServerDiChatReplier

java.lang.Object
  |
  +--java.lang.Thread
        |
        +--utility_ns.ServerDiChatReplier

public class ServerDiChatReplier
extends java.lang.Thread

Classe che si occupa del riconoscimento della richiesta di un Server di Chat, della elaborazione e della generazione della risposta.


Field Summary
private  java.io.ObjectInputStream from_ns
           
private  java.io.ObjectInputStream in
           
private  MainClass mainclass
           
private  java.io.ObjectOutputStream out
           
private  java.net.Socket socket
           
private  java.net.Socket socket_ns
           
private  java.io.ObjectOutputStream to_ns
           
 
Fields inherited from class java.lang.Thread
contextClassLoader, daemon, eetop, group, inheritedAccessControlContext, MAX_PRIORITY, MIN_PRIORITY, name, NORM_PRIORITY, priority, single_step, stillborn, stopThreadPermission, target, threadInitNumber, threadQ, values
 
Constructor Summary
ServerDiChatReplier(MainClass mc, java.net.Socket s)
          Costruttore: inizializza i flussi di ingresso e uscita verso il Server di Chat.
 
Method Summary
private  void deregistrazioneSDC()
          Metodo: deregistra un Server di Chat nella Tabella dei Server di Chat nel Name Server Primario e invoca l'eventuale deregistrazione sul Secondario.
private  void generatoreListaSDC()
          Metodo: genera una lista dei Server di Chat registrati con relativi indirizzi estraendola e mandandola al Server di Chat che l'ha richiesta un elemento alla volta.
private  void registrazioneSDC()
          Metodo: registra un Server di Chat nella Tabella dei Server di Chat nel Name Server Primario e invoca l'eventuale registrazione sul Secondario.
private  void richiestaDeregistrazioneSuNS2(java.lang.String nome_sdc)
          Metodo: richiede la deregistrazione di un Server di Chat sul Name Server Secondario inviandogli il nome.
private  void richiestaRegistrazioneSuNS2(java.lang.String nome_sdc, java.net.InetAddress ind_sdc)
          Metodo: richiede la registrazione di un Server di Chat sul Name Server Secondario inviandogli nome e indirizzo.
 void run()
          Thread che riceve la richiesta di un Server di Chat, verifica se il Name Server è abilitato a rispondere, legge il tipo di richiesta e invoca il metodo che risponde a tale richiesta.
 
Methods inherited from class java.lang.Thread
, activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, exit, getContextClassLoader, getName, getPriority, getThreadGroup, init, interrupt, interrupt0, interrupted, isAlive, isDaemon, isInterrupted, isInterrupted, join, join, join, nextThreadNum, registerNatives, resume, resume0, setContextClassLoader, setDaemon, setName, setPriority, setPriority0, sleep, sleep, start, stop, stop, stop0, suspend, suspend0, toString, yield
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

socket

private java.net.Socket socket

socket_ns

private java.net.Socket socket_ns

in

private java.io.ObjectInputStream in

from_ns

private java.io.ObjectInputStream from_ns

out

private java.io.ObjectOutputStream out

to_ns

private java.io.ObjectOutputStream to_ns

mainclass

private MainClass mainclass
Constructor Detail

ServerDiChatReplier

public ServerDiChatReplier(MainClass mc,
                           java.net.Socket s)
Costruttore: inizializza i flussi di ingresso e uscita verso il Server di Chat.
Method Detail

run

public void run()
Thread che riceve la richiesta di un Server di Chat, verifica se il Name Server è abilitato a rispondere, legge il tipo di richiesta e invoca il metodo che risponde a tale richiesta.
Overrides:
run in class java.lang.Thread

generatoreListaSDC

private void generatoreListaSDC()
Metodo: genera una lista dei Server di Chat registrati con relativi indirizzi estraendola e mandandola al Server di Chat che l'ha richiesta un elemento alla volta.

registrazioneSDC

private void registrazioneSDC()
Metodo: registra un Server di Chat nella Tabella dei Server di Chat nel Name Server Primario e invoca l'eventuale registrazione sul Secondario.
Riceve il nome e l'indirizzo del Server di Chat da registrare e invia OK o FAIL.

deregistrazioneSDC

private void deregistrazioneSDC()
Metodo: deregistra un Server di Chat nella Tabella dei Server di Chat nel Name Server Primario e invoca l'eventuale deregistrazione sul Secondario. Riceve il nome del Server di Chat da deregistrare e non invia alcuna risposta.

richiestaRegistrazioneSuNS2

private void richiestaRegistrazioneSuNS2(java.lang.String nome_sdc,
                                         java.net.InetAddress ind_sdc)
Metodo: richiede la registrazione di un Server di Chat sul Name Server Secondario inviandogli nome e indirizzo. Riceve OK o FAIL.

richiestaDeregistrazioneSuNS2

private void richiestaDeregistrazioneSuNS2(java.lang.String nome_sdc)
Metodo: richiede la deregistrazione di un Server di Chat sul Name Server Secondario inviandogli il nome. Riceve OK o FAIL.