diff --git a/client/src/main/java/ch/zhaw/pm2/multichat/client/ChatWindowController.java b/client/src/main/java/ch/zhaw/pm2/multichat/client/ChatWindowController.java index 6a2f224..cda6fd8 100644 --- a/client/src/main/java/ch/zhaw/pm2/multichat/client/ChatWindowController.java +++ b/client/src/main/java/ch/zhaw/pm2/multichat/client/ChatWindowController.java @@ -106,18 +106,22 @@ public class ChatWindowController { private void startConnectionHandler() throws IOException { String userName = userNameField.getText(); - String serverAddress = serverAddressField.getText(); - int serverPort = Integer.parseInt(serverPortField.getText()); - connectionHandler = new ClientConnectionHandler( - NetworkHandler.openConnection(serverAddress, serverPort), userName, - messages); - new Thread(connectionHandler).start(); + if(!userName.contains(" ")) { + String serverAddress = serverAddressField.getText(); + int serverPort = Integer.parseInt(serverPortField.getText()); + connectionHandler = new ClientConnectionHandler( + NetworkHandler.openConnection(serverAddress, serverPort), userName, + messages); + new Thread(connectionHandler).start(); - //register Listener - startListener(); + //register Listener + startListener(); - // register window close handler - rootPane.getScene().getWindow().addEventHandler(WindowEvent.WINDOW_CLOSE_REQUEST, windowCloseHandler); + // register window close handler + rootPane.getScene().getWindow().addEventHandler(WindowEvent.WINDOW_CLOSE_REQUEST, windowCloseHandler); + } else { + addError("It is not allowed to have spaces in username!"); + } } private void terminateConnectionHandler() { diff --git a/client/src/main/java/ch/zhaw/pm2/multichat/client/ClientConnectionHandler.java b/client/src/main/java/ch/zhaw/pm2/multichat/client/ClientConnectionHandler.java index 9da83da..9ff948a 100644 --- a/client/src/main/java/ch/zhaw/pm2/multichat/client/ClientConnectionHandler.java +++ b/client/src/main/java/ch/zhaw/pm2/multichat/client/ClientConnectionHandler.java @@ -28,7 +28,7 @@ public class ClientConnectionHandler implements Runnable { public static final String USER_NONE = ""; public static final String USER_ALL = "*"; - private final Pattern messagePattern = Pattern.compile( "^(?:@(\\w*))?\\s*(.*)$" ); + private final Pattern messagePattern = Pattern.compile( "^(?:@(\\S*))?\\s*(.*)$" ); private SimpleStringProperty userName; private SimpleObjectProperty state; @@ -63,7 +63,6 @@ public class ClientConnectionHandler implements Runnable { public void setState (State newState) { state.set(newState); - } public void run () {