Fixed: Error Username
This commit is contained in:
@@ -90,7 +90,13 @@ public class GameController {
|
|||||||
* {@code false} otherwise.
|
* {@code false} otherwise.
|
||||||
*/
|
*/
|
||||||
public synchronized boolean addPlayer(String username) {
|
public synchronized boolean addPlayer(String username) {
|
||||||
return model.addPlayer(new Player(username));
|
if(username.trim().length()>10)
|
||||||
|
return false;
|
||||||
|
Player player = model.getPlayerByUsername(username);
|
||||||
|
if(player!=null)
|
||||||
|
return false;
|
||||||
|
player = new Player(username);
|
||||||
|
return model.addPlayer(player);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ package it.polimi.ingsw.gc14;
|
|||||||
/** Enumeration of error types that can be returned by server-side operations. */
|
/** Enumeration of error types that can be returned by server-side operations. */
|
||||||
public enum ErrorType {
|
public enum ErrorType {
|
||||||
/** The chosen username is already taken by another connected player. */
|
/** The chosen username is already taken by another connected player. */
|
||||||
USERNAME_ALREADY_USED("Username is already in use"),
|
INVALID_USERNAME("Username is already in use or too long"),
|
||||||
/** The user is already connected to the server. */
|
/** The user is already connected to the server. */
|
||||||
USER_ALREADY_CONNECTED("User is already connected"),
|
USER_ALREADY_CONNECTED("User is already connected"),
|
||||||
/** The requested number of players is outside the allowed range. */
|
/** The requested number of players is outside the allowed range. */
|
||||||
|
|||||||
@@ -112,7 +112,7 @@ public class RMIServer extends UnicastRemoteObject implements IGameServer {
|
|||||||
System.out.println("Heartbeat connected for: " + username);
|
System.out.println("Heartbeat connected for: " + username);
|
||||||
return null;
|
return null;
|
||||||
} else {
|
} else {
|
||||||
return ErrorType.USERNAME_ALREADY_USED;
|
return ErrorType.INVALID_USERNAME;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -186,7 +186,7 @@ public class TCPServer {
|
|||||||
new Thread(handler).start();
|
new Thread(handler).start();
|
||||||
continue;
|
continue;
|
||||||
} else {
|
} else {
|
||||||
eventAddPlayer.setErrorType(ErrorType.USERNAME_ALREADY_USED);
|
eventAddPlayer.setErrorType(ErrorType.INVALID_USERNAME);
|
||||||
eventAddPlayer.setIsError(true);
|
eventAddPlayer.setIsError(true);
|
||||||
clientSend.writeObject(eventAddPlayer);
|
clientSend.writeObject(eventAddPlayer);
|
||||||
clientSocket.close();
|
clientSocket.close();
|
||||||
|
|||||||
Reference in New Issue
Block a user