fixed bug that made registering a new user impossible

This commit is contained in:
delvh 2020-02-09 20:41:29 +01:00
parent aa52cddf6a
commit b6763384fd

View File

@ -120,13 +120,16 @@ public class LoginCredentialProcessor implements ObjectProcessor<LoginCredential
* @since Envoy Server Standalone v0.1-alpha
*/
private envoy.server.data.User newUser(LoginCredentials credentials, long socketId, ObjectWriteProxy writeProxy) throws IOException {
// Checking that no user already has this identifier TODO change to identifier once implemented
if (PersistenceManager.getPersistenceManager().getUserByName(credentials.getIdentifier()) != null)
try {
// Checking that no user already has this identifier
PersistenceManager.getPersistenceManager().getUserByName(credentials.getIdentifier());
// this code only gets executed if this user already exists
writeProxy.write(socketId, new HandshakeRejectionEvent(HandshakeRejectionEvent.USER_EXISTS_ALREADY));
return null;
} catch (NoResultException e) {
// Creation of a new user
envoy.server.data.User user;
user = new envoy.server.data.User();
//TODO needs to be replaced later on
user.setName(credentials.getIdentifier());
user.setLastSeen(new Date());
user.setStatus(User.UserStatus.ONLINE);
@ -136,3 +139,4 @@ public class LoginCredentialProcessor implements ObjectProcessor<LoginCredential
return user;
}
}
}