working on SqliteUserService:
user creation and list works, upsert needs to be done Signed-off-by: Stephan Richter <s.richter@srsoftware.de>
This commit is contained in:
@@ -23,8 +23,8 @@ public class ClientController extends Controller {
|
||||
private final AuthorizationService authorizations;
|
||||
private final ClientService clients;
|
||||
|
||||
public ClientController(AuthorizationService authorizationService, ClientService clientService, SessionService sessionService) {
|
||||
super(sessionService);
|
||||
public ClientController(AuthorizationService authorizationService, ClientService clientService, SessionService sessionService, UserService userService) {
|
||||
super(sessionService, userService);
|
||||
authorizations = authorizationService;
|
||||
clients = clientService;
|
||||
}
|
||||
|
||||
@@ -5,17 +5,20 @@ import com.sun.net.httpserver.HttpExchange;
|
||||
import de.srsoftware.http.PathHandler;
|
||||
import de.srsoftware.http.SessionToken;
|
||||
import de.srsoftware.oidc.api.SessionService;
|
||||
import de.srsoftware.oidc.api.UserService;
|
||||
import de.srsoftware.oidc.api.data.Session;
|
||||
import java.util.Optional;
|
||||
|
||||
public abstract class Controller extends PathHandler {
|
||||
protected final SessionService sessions;
|
||||
private final UserService users;
|
||||
|
||||
Controller(SessionService sessionService) {
|
||||
Controller(SessionService sessionService, UserService userService) {
|
||||
sessions = sessionService;
|
||||
users = userService;
|
||||
}
|
||||
|
||||
protected Optional<Session> getSession(HttpExchange ex) {
|
||||
return SessionToken.from(ex).map(SessionToken::sessionId).flatMap(sessions::retrieve);
|
||||
return SessionToken.from(ex).map(SessionToken::sessionId).flatMap(sessionId -> sessions.retrieve(sessionId, users));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,14 +9,15 @@ import static java.net.HttpURLConnection.HTTP_UNAUTHORIZED;
|
||||
import com.sun.net.httpserver.HttpExchange;
|
||||
import de.srsoftware.oidc.api.MailConfig;
|
||||
import de.srsoftware.oidc.api.SessionService;
|
||||
import de.srsoftware.oidc.api.UserService;
|
||||
import de.srsoftware.oidc.api.data.Session;
|
||||
import java.io.IOException;
|
||||
|
||||
public class EmailController extends Controller {
|
||||
private final MailConfig mailConfig;
|
||||
|
||||
public EmailController(MailConfig mailConfig, SessionService sessionService) {
|
||||
super(sessionService);
|
||||
public EmailController(MailConfig mailConfig, SessionService sessionService, UserService userService) {
|
||||
super(sessionService, userService);
|
||||
this.mailConfig = mailConfig;
|
||||
}
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ public class UserController extends Controller {
|
||||
private final ResourceLoader resourceLoader;
|
||||
|
||||
public UserController(MailConfig mailConfig, SessionService sessionService, UserService userService, ResourceLoader resourceLoader) {
|
||||
super(sessionService);
|
||||
super(sessionService, userService);
|
||||
users = userService;
|
||||
this.mailConfig = mailConfig;
|
||||
this.resourceLoader = resourceLoader;
|
||||
@@ -40,7 +40,10 @@ public class UserController extends Controller {
|
||||
if (!user.hasPermission(MANAGE_USERS)) return sendEmptyResponse(HTTP_FORBIDDEN, ex);
|
||||
var json = json(ex);
|
||||
var newID = uuid();
|
||||
User.of(json, uuid()).ifPresent(u -> users.updatePassword(u, json.getString(PASSWORD)));
|
||||
User.of(json, uuid()).ifPresent(newUser -> {
|
||||
users.save(newUser);
|
||||
users.updatePassword(newUser, json.getString(PASSWORD));
|
||||
});
|
||||
return sendContent(ex, newID);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user