diff --git a/de.srsoftware.cookies/src/main/java/de/srsoftware/cookies/SessionToken.java b/de.srsoftware.cookies/src/main/java/de/srsoftware/cookies/SessionToken.java index 585df8a..05c54c8 100644 --- a/de.srsoftware.cookies/src/main/java/de/srsoftware/cookies/SessionToken.java +++ b/de.srsoftware.cookies/src/main/java/de/srsoftware/cookies/SessionToken.java @@ -3,7 +3,6 @@ package de.srsoftware.cookies; import com.sun.net.httpserver.HttpExchange; -import java.util.List; import java.util.Optional; public class SessionToken extends Cookie { diff --git a/de.srsoftware.oidc.api/src/main/java/de/srsoftware/oidc/api/PathHandler.java b/de.srsoftware.oidc.api/src/main/java/de/srsoftware/oidc/api/PathHandler.java index 42e0b1c..366a992 100644 --- a/de.srsoftware.oidc.api/src/main/java/de/srsoftware/oidc/api/PathHandler.java +++ b/de.srsoftware.oidc.api/src/main/java/de/srsoftware/oidc/api/PathHandler.java @@ -55,7 +55,7 @@ public abstract class PathHandler implements HttpHandler { String path = relativePath(ex); String method = ex.getRequestMethod(); System.out.printf("%s %s\n", method, path); - boolean dummy = switch (method) { + boolean ignored = switch (method) { case DELETE -> doDelete(path,ex); case GET -> doGet(path,ex); case POST -> doPost(path,ex); @@ -89,11 +89,11 @@ public abstract class PathHandler implements HttpHandler { } public static Optional getHeader(HttpExchange ex, String key) { - return Optional.ofNullable(ex.getRequestHeaders().get(key)).map(List::stream).map(Stream::findFirst).orElse(Optional.empty()); + return Optional.ofNullable(ex.getRequestHeaders().get(key)).map(List::stream).flatMap(Stream::findFirst); } - public static boolean isPost(String method) { - return POST.equals(method); + public static String hostname(HttpExchange ex) { + return "http://%s".formatted(ex.getRequestHeaders().getFirst("Host")); } public static JSONObject json(HttpExchange ex) throws IOException { @@ -101,12 +101,7 @@ public abstract class PathHandler implements HttpHandler { } public static Optional language(HttpExchange ex) { - return getHeader(ex, "Accept-Language").map(s -> Arrays.stream(s.split(","))).map(Stream::findFirst).orElse(Optional.empty()); - } - - - public static String prefix(HttpExchange ex) { - return "http://%s".formatted(ex.getRequestHeaders().getFirst("Host")); + return getHeader(ex, "Accept-Language").map(s -> Arrays.stream(s.split(","))).flatMap(Stream::findFirst); } public static boolean sendEmptyResponse(int statusCode, HttpExchange ex) throws IOException { diff --git a/de.srsoftware.oidc.backend/src/main/java/de/srsoftware/oidc/backend/Backend.java b/de.srsoftware.oidc.backend/src/main/java/de/srsoftware/oidc/backend/Backend.java index a67be3e..c9cad79 100644 --- a/de.srsoftware.oidc.backend/src/main/java/de/srsoftware/oidc/backend/Backend.java +++ b/de.srsoftware.oidc.backend/src/main/java/de/srsoftware/oidc/backend/Backend.java @@ -165,10 +165,9 @@ public class Backend extends PathHandler { } private boolean openidConfig(HttpExchange ex) throws IOException { - var uri = ex.getRequestURI().toString(); JSONObject json = new JSONObject(); - json.put("authorization_endpoint", prefix(ex) + "/web/authorization.html"); + json.put("authorization_endpoint", hostname(ex) + "/web/authorization.html"); return sendContent(ex, json); }