From 24da5012cc8a980aec92bb2075a2db5ee4dc9ad6 Mon Sep 17 00:00:00 2001 From: Besmir Beqiri Date: Fri, 22 Dec 2023 18:24:20 +0100 Subject: [PATCH] Small improvements on the `login` app example --- .../one/jpro/platform/auth/example/login/LoginApp.java | 10 +++++++--- .../platform/auth/example/login/page/LoginPage.java | 3 +-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/jpro-auth/example/src/main/java/one/jpro/platform/auth/example/login/LoginApp.java b/jpro-auth/example/src/main/java/one/jpro/platform/auth/example/login/LoginApp.java index 4e611f74..55e0729f 100644 --- a/jpro-auth/example/src/main/java/one/jpro/platform/auth/example/login/LoginApp.java +++ b/jpro-auth/example/src/main/java/one/jpro/platform/auth/example/login/LoginApp.java @@ -68,9 +68,9 @@ public Route createRoute() { .create(getStage()); return Route.empty() - .and(Route.get("/", (r) -> Response.node(new LoginPage(this, googleAuthProvider)))) - .when((r) -> getUser() != null, Route.empty() - .and(Route.get("/user/signed-in", (r) -> Response.node(new SignedInPage(this, googleAuthProvider))))) + .and(Route.get("/", (r) -> Response.node(new LoginPage(googleAuthProvider)))) + .when(request -> isUserAuthenticated(), Route.empty() + .and(Route.get("/user/signed-in", request -> Response.node(new SignedInPage(this, googleAuthProvider))))) .filter(DevFilter.create()) .filter(OAuth2Filter.create(googleAuthProvider, user -> { setUser(user); @@ -95,4 +95,8 @@ public final void setUser(User value) { session.remove("user"); } } + + private boolean isUserAuthenticated() { + return getUser() != null; + } } diff --git a/jpro-auth/example/src/main/java/one/jpro/platform/auth/example/login/page/LoginPage.java b/jpro-auth/example/src/main/java/one/jpro/platform/auth/example/login/page/LoginPage.java index 884fa254..9a356e36 100644 --- a/jpro-auth/example/src/main/java/one/jpro/platform/auth/example/login/page/LoginPage.java +++ b/jpro-auth/example/src/main/java/one/jpro/platform/auth/example/login/page/LoginPage.java @@ -4,7 +4,6 @@ import javafx.scene.image.Image; import javafx.scene.image.ImageView; import one.jpro.platform.auth.core.oauth2.provider.GoogleAuthenticationProvider; -import one.jpro.platform.auth.example.login.LoginApp; import one.jpro.platform.auth.routing.OAuth2Filter; import java.util.Optional; @@ -16,7 +15,7 @@ */ public class LoginPage extends Page { - public LoginPage(LoginApp app, GoogleAuthenticationProvider authProvider) { + public LoginPage(GoogleAuthenticationProvider authProvider) { getStyleClass().add("simple-page"); final var googleProviderButton = createAuthProviderButton("Google");