Se qualcuno conosce questo tipo di pattern, può vedere se sbaglio qualcosa nell'implementazione?

Protocollo usato TCP, quindi classi Socket e ServerSocket

Classe Client= genera i thread che devono inviare richieste al Server

Classe ClientThread= nel costruttore crea la Socket client, ridefinisce il metodo run(), selezionando quanto deve essere mandato come richiesta, crea un'istanza del Proxy lato client, e su di esso invoca un metodo dell'interfaccia base.

Classe Proxy Client= implementa i metodi che sono definiti nell'interfaccia, inviando per ogni tipo di metodo quello che serve, tramite i canali di I/O, al Server e leggendo quanto gli viene inviato dal server

Classe Skeleton= gestisce la connessione lato server, implementa l'interfaccia definita e lascia indefiniti i metodi della stessa, legge quanto scritto dal client sul canale, e invoca un thread skeleton, passano socket di connessione, riferimento all'interfaccia e dati del pacchetto dopo aver fatto unmarshalling.

Classe SkeletonThread= costruttore, dove legge i dati passati dallo Skeleton, crea un canale di scrittura su Stream per scrivere i dati ottenuti dall'invocazione del metodo richiesto, per restituirli al client.

Classe ServerReale= implementa effettivamente cosa devono fare i metodi definiti nell'interfaccia creata.

Classe Server= istanzia un obj serverReale su cui richiama l'esecuzione dello skeleton

Grazie mille.