From 1cdfb064032bf14f37d1dca4119f4d727cdcb0ce Mon Sep 17 00:00:00 2001 From: zhou-hao Date: Tue, 28 Nov 2017 22:06:48 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/authorization/AuthenticationHolder.java | 4 +--- .../listener/event/AbstractAuthorizationEvent.java | 4 +++- .../listener/event/AuthorizationBeforeEvent.java | 2 ++ .../listener/event/AuthorizationDecodeEvent.java | 2 ++ .../authorization/listener/event/AuthorizationExitEvent.java | 3 +++ .../listener/event/AuthorizationFailedEvent.java | 1 + .../listener/event/AuthorizationSuccessEvent.java | 3 ++- 7 files changed, 14 insertions(+), 5 deletions(-) diff --git a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/AuthenticationHolder.java b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/AuthenticationHolder.java index 2bdc9f18e..6e8c2cc8a 100644 --- a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/AuthenticationHolder.java +++ b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/AuthenticationHolder.java @@ -52,13 +52,11 @@ public final class AuthenticationHolder { private static Authentication get(Function function) { lock.readLock().lock(); try { - Authentication authentication = suppliers.stream() + return suppliers.stream() .map(function) .filter(Objects::nonNull) .findFirst() .orElse(null); - - return authentication; } finally { lock.readLock().unlock(); } diff --git a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AbstractAuthorizationEvent.java b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AbstractAuthorizationEvent.java index 22d31265f..b0918b4e0 100644 --- a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AbstractAuthorizationEvent.java +++ b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AbstractAuthorizationEvent.java @@ -31,11 +31,13 @@ import java.util.function.Function; * @since 3.0 */ public abstract class AbstractAuthorizationEvent extends ApplicationEvent implements AuthorizationEvent { + private static final long serialVersionUID = -3027505108916079214L; + protected String username; protected String password; - private Function parameterGetter; + private transient Function parameterGetter; /** * 带参构造方法,所有参数不能为null diff --git a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationBeforeEvent.java b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationBeforeEvent.java index 65fa5b497..fbad1997b 100644 --- a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationBeforeEvent.java +++ b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationBeforeEvent.java @@ -28,6 +28,8 @@ import java.util.function.Function; */ public class AuthorizationBeforeEvent extends AbstractAuthorizationEvent { + private static final long serialVersionUID = 5948747533500518524L; + public AuthorizationBeforeEvent(String username, String password, Function parameterGetter) { super(username, password, parameterGetter); } diff --git a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationDecodeEvent.java b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationDecodeEvent.java index f12c11923..d2857e90f 100644 --- a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationDecodeEvent.java +++ b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationDecodeEvent.java @@ -28,6 +28,8 @@ import java.util.function.Function; */ public class AuthorizationDecodeEvent extends AbstractAuthorizationEvent { + private static final long serialVersionUID = 5418501934490174251L; + public AuthorizationDecodeEvent(String username, String password, Function parameterGetter) { super(username, password, parameterGetter); } diff --git a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationExitEvent.java b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationExitEvent.java index 4185b4ea2..c097a8a06 100644 --- a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationExitEvent.java +++ b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationExitEvent.java @@ -27,6 +27,9 @@ import org.springframework.context.ApplicationEvent; * @author zhouhao */ public class AuthorizationExitEvent extends ApplicationEvent implements AuthorizationEvent { + + private static final long serialVersionUID = -4590245933665047280L; + private Authentication authentication; public AuthorizationExitEvent(Authentication authentication) { diff --git a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationFailedEvent.java b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationFailedEvent.java index df3cd9267..4d3fe4b32 100644 --- a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationFailedEvent.java +++ b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationFailedEvent.java @@ -27,6 +27,7 @@ import java.util.function.Function; */ public class AuthorizationFailedEvent extends AbstractAuthorizationEvent { + private static final long serialVersionUID = -101792832265740828L; /** * 失败原因 */ diff --git a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationSuccessEvent.java b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationSuccessEvent.java index 78abcd97d..db7cb6d6a 100644 --- a/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationSuccessEvent.java +++ b/hsweb-authorization/hsweb-authorization-api/src/main/java/org/hswebframework/web/authorization/listener/event/AuthorizationSuccessEvent.java @@ -34,9 +34,10 @@ import java.util.function.Function; * @since 3.0 */ public class AuthorizationSuccessEvent extends ApplicationEvent implements AuthorizationEvent { + private static final long serialVersionUID = -2452116314154155058L; private Authentication authentication; - private Function parameterGetter; + private transient Function parameterGetter; private Map result = new HashMap<>();