Refactor createPrivilegedUser to accept PrivilegedUser object and adjust LoginController for consistency.

This commit is contained in:
akastijn 2025-11-08 18:21:21 +01:00
parent 7315ea8455
commit 724b773be5
2 changed files with 9 additions and 8 deletions

View File

@ -210,15 +210,16 @@ public class LoginController implements LoginApi {
try {
log.debug("Loading user by uuid {}", uuid.toString());
PrivilegedUserMapper mapper = sqlSession.getMapper(PrivilegedUserMapper.class);
Optional<PrivilegedUser> privilegedUser = mapper
Optional<PrivilegedUser> optionalPrivilegedUser = mapper
.getUserByUuid(uuid);
if (privilegedUser.isEmpty()) {
int privilegedUserId = mapper.createPrivilegedUser(uuid);
if (optionalPrivilegedUser.isEmpty()) {
PrivilegedUser privilegedUser = new PrivilegedUser(null, uuid, List.of());
mapper.createPrivilegedUser(privilegedUser);
privilegedUserCompletableFuture.complete(
Optional.of(new PrivilegedUser(privilegedUserId, uuid, List.of())));
Optional.of(privilegedUser));
} else {
privilegedUserCompletableFuture.complete(privilegedUser);
privilegedUserCompletableFuture.complete(optionalPrivilegedUser);
}
} catch (Exception e) {
log.error("Failed to load user by uuid", e);

View File

@ -103,8 +103,8 @@ public interface PrivilegedUserMapper {
@Insert("""
INSERT INTO privileged_users (uuid)
VALUES (#{uuid})
VALUES (#{user.uuid})
""")
@SelectKey(statement = "SELECT LAST_INSERT_ID()", keyProperty = "id", before = false, resultType = int.class)
int createPrivilegedUser(UUID uuid);
@SelectKey(statement = "SELECT LAST_INSERT_ID()", keyProperty = "user.id", before = false, resultType = int.class)
void createPrivilegedUser(@Param("user") PrivilegedUser user);
}