Browse Source

added UserHelper interface to allow dependency injection

Signed-off-by: Stephan Richter <s.richter@srsoftware.de>
feature/document
Stephan Richter 4 months ago
parent
commit
c0b393a85b
  1. 11
      core/src/main/java/de/srsoftware/umbrella/core/api/UserHelper.java
  2. 5
      user/src/main/java/de/srsoftware/umbrella/user/UserModule.java

11
core/src/main/java/de/srsoftware/umbrella/core/api/UserHelper.java

@ -0,0 +1,11 @@
package de.srsoftware.umbrella.core.api;
import com.sun.net.httpserver.HttpExchange;
import de.srsoftware.umbrella.core.UmbrellaException;
import de.srsoftware.umbrella.core.model.UmbrellaUser;
import java.util.Optional;
public interface UserHelper {
Optional<UmbrellaUser> loadUser(HttpExchange ex) throws UmbrellaException;
}

5
user/src/main/java/de/srsoftware/umbrella/user/UserModule.java

@ -29,6 +29,7 @@ import de.srsoftware.tools.SessionToken;
import de.srsoftware.umbrella.core.BaseHandler; import de.srsoftware.umbrella.core.BaseHandler;
import de.srsoftware.umbrella.core.Token; import de.srsoftware.umbrella.core.Token;
import de.srsoftware.umbrella.core.UmbrellaException; import de.srsoftware.umbrella.core.UmbrellaException;
import de.srsoftware.umbrella.core.api.UserHelper;
import de.srsoftware.umbrella.core.model.EmailAddress; import de.srsoftware.umbrella.core.model.EmailAddress;
import de.srsoftware.umbrella.core.model.UmbrellaUser; import de.srsoftware.umbrella.core.model.UmbrellaUser;
import de.srsoftware.umbrella.message.MessageSystem; import de.srsoftware.umbrella.message.MessageSystem;
@ -52,7 +53,7 @@ import org.jose4j.keys.resolvers.HttpsJwksVerificationKeyResolver;
import org.json.JSONObject; import org.json.JSONObject;
public class UserModule extends BaseHandler { public class UserModule extends BaseHandler implements UserHelper {
private record State(LoginService loginService, JSONObject config){ private record State(LoginService loginService, JSONObject config){
@ -132,7 +133,7 @@ public class UserModule extends BaseHandler {
} }
private Optional<UmbrellaUser> loadUser(HttpExchange ex) throws UmbrellaException { public Optional<UmbrellaUser> loadUser(HttpExchange ex) throws UmbrellaException {
return loadUser(SessionToken.from(ex).map(Token::of)); return loadUser(SessionToken.from(ex).map(Token::of));
} }

Loading…
Cancel
Save