Skip to content
Snippets Groups Projects

Feedback hiding

45 files
+ 1734
314
Compare changes
  • Side-by-side
  • Inline

Files

@@ -11,6 +11,7 @@ import java.util.List;
import java.util.Optional;
import nl.tudelft.ewi.auta.core.authentication.AutaUser;
import nl.tudelft.ewi.auta.core.authentication.AutaUserBuilderFactory;
import nl.tudelft.ewi.auta.core.response.exception.DuplicateUserException;
import nl.tudelft.ewi.auta.core.response.exception.MissingUserException;
import org.slf4j.Logger;
@@ -34,13 +35,22 @@ public class DatabaseConnection implements AutoCloseable {
*/
private final Connection connection;
/**
* The factory creating user builders.
*/
private final AutaUserBuilderFactory userBuilderFactory;
/**
* Creates a new data source.
*
* @param connection the SQLite connection this connection represents
* @param userBuilderFactory the factory creating user builders
*/
public DatabaseConnection(final Connection connection) {
public DatabaseConnection(
final Connection connection, final AutaUserBuilderFactory userBuilderFactory
) {
this.connection = connection;
this.userBuilderFactory = userBuilderFactory;
}
/**
@@ -175,14 +185,15 @@ public class DatabaseConnection implements AutoCloseable {
final var displayName = userRes.getString("display");
final var authorities = this.getAuthoritiesFor(authoritiesStmt, username);
return Optional.of(new AutaUser(
username,
password,
enabled,
authorities,
samlIp,
displayName != null ? displayName : username
));
return Optional.of(this.userBuilderFactory.createAutaUserBuilder()
.withUsername(username)
.withPassword(password)
.withEnabled(enabled)
.withAuthorities(authorities)
.withSamlIdentityProviderId(samlIp)
.withDisplayName(displayName != null ? displayName : username)
.build()
);
}
}
}
Loading