Add: Partial Implementation Of TCPServer.java.
This commit is contained in:
@@ -9,11 +9,16 @@ import java.util.List;
|
||||
|
||||
public class TCPServer {
|
||||
int port = -1;
|
||||
int ConnectedPlayers = 0;
|
||||
ServerSocket serverTCP = null;
|
||||
GameController gameController;
|
||||
|
||||
private List<ClientHandler> clientHandlers;
|
||||
|
||||
private int getConnectedPlayers(){
|
||||
return ConnectedPlayers;
|
||||
}
|
||||
|
||||
public void start(String args[]){
|
||||
clientHandlers = new ArrayList<>();
|
||||
|
||||
@@ -25,19 +30,26 @@ public class TCPServer {
|
||||
e.printStackTrace();
|
||||
return;
|
||||
}
|
||||
System.out.println("Listening on port " + port);
|
||||
System.out.println("Listening on port: " + port);
|
||||
|
||||
while(true){
|
||||
Socket clientSocket = null;
|
||||
|
||||
try {
|
||||
try{
|
||||
clientSocket = serverTCP.accept();
|
||||
} catch (IOException e) {
|
||||
if(!gameController.addPlayer(clientSocket.getInputStream().toString()) || ConnectedPlayers >= clientHandlers.size()){
|
||||
clientSocket.close();
|
||||
System.out.println("Player already present or username is invalid. Connection terminated.\n");
|
||||
}
|
||||
}
|
||||
catch (IOException e){
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
|
||||
System.out.println("Accepted");
|
||||
ClientHandler clientHandler = new ClientHandler(clientSocket, clientHandlers, this.gameController);
|
||||
ConnectedPlayers++;
|
||||
ClientHandler clientHandler = new ClientHandler(clientSocket, clientHandlers, gameController);
|
||||
clientHandlers.add(clientHandler);
|
||||
Thread t = new Thread(clientHandler);
|
||||
t.start();
|
||||
|
||||
Reference in New Issue
Block a user