Queste classi sono utilizzate sia dal server che dal client.
-
Map.java
classe che gestisce l'evoluzione dello stato del gioco, e le
operazioni di base che su una partita possono essere eseguite
(inizio, mossa, termine); estende Block
-
Block.java
classe usata da Map per gestire un pezzo di domino
-
Parser.java
classe che esegue le operazioni di parsing delle stringhe che
vengono lette dai socket
-
Server.java
metodo main() del server e altre utilità
-
ServerGame.java
classe centrale della gestione del gioco, per questa classe passa
l'avanzamento dello stato
-
ServerThread.java
classe che gestisce la comunicazione con i socket e interpreta i
comandi grazie a una istanza di Parser
-
ServerMap.java
classe che estende Map aggiungendo alcune funzionalità in più per ServerGame
-
ServerLog.java
classe statica di utilità che serve a uniformare il logging del
server, utilizzata da Server, ServerGame, ServerThread e ServerMap
-
ServerCounter.java
classe statica e sincronizzata di utilità che conta i giochi
contemporaneamente attivi e impedisce che siano piú di un dato numero
definito a runtime
-
Client.java
è l'applet che deve essere inserito in un file html