From e8094b8cf2bc9fa6d0f7a5509c431b1dbbf4e149 Mon Sep 17 00:00:00 2001 From: Phillip Webb Date: Fri, 31 Jul 2020 22:41:38 -0700 Subject: [PATCH] Polish spring-security-rsocket main code Manually polish `spring-security-rsocket` following the formatting and checkstyle fixes. Issue gh-8945 --- .../AnonymousPayloadInterceptor.java | 6 +++--- .../AuthenticationPayloadExchangeConverter.java | 4 ++-- ...xchangeMatcherReactiveAuthorizationManager.java | 3 ++- .../rsocket/core/PayloadSocketAcceptor.java | 2 -- .../metadata/BasicAuthenticationDecoder.java | 1 - .../util/matcher/PayloadExchangeMatchers.java | 14 ++++++++++---- .../util/matcher/RoutePayloadExchangeMatcher.java | 5 ++--- 7 files changed, 19 insertions(+), 16 deletions(-) diff --git a/rsocket/src/main/java/org/springframework/security/rsocket/authentication/AnonymousPayloadInterceptor.java b/rsocket/src/main/java/org/springframework/security/rsocket/authentication/AnonymousPayloadInterceptor.java index e659bb6850..ae1b9e2846 100644 --- a/rsocket/src/main/java/org/springframework/security/rsocket/authentication/AnonymousPayloadInterceptor.java +++ b/rsocket/src/main/java/org/springframework/security/rsocket/authentication/AnonymousPayloadInterceptor.java @@ -39,11 +39,11 @@ import org.springframework.util.Assert; */ public class AnonymousPayloadInterceptor implements PayloadInterceptor, Ordered { - private String key; + private final String key; - private Object principal; + private final Object principal; - private List authorities; + private final List authorities; private int order; diff --git a/rsocket/src/main/java/org/springframework/security/rsocket/authentication/AuthenticationPayloadExchangeConverter.java b/rsocket/src/main/java/org/springframework/security/rsocket/authentication/AuthenticationPayloadExchangeConverter.java index ebc4d6cfc2..25e3d82611 100644 --- a/rsocket/src/main/java/org/springframework/security/rsocket/authentication/AuthenticationPayloadExchangeConverter.java +++ b/rsocket/src/main/java/org/springframework/security/rsocket/authentication/AuthenticationPayloadExchangeConverter.java @@ -56,7 +56,7 @@ public class AuthenticationPayloadExchangeConverter implements PayloadExchangeAu private static final MimeType AUTHENTICATION_MIME_TYPE = MimeTypeUtils .parseMimeType(WellKnownMimeType.MESSAGE_RSOCKET_AUTHENTICATION.getString()); - private MetadataExtractor metadataExtractor = createDefaultExtractor(); + private final MetadataExtractor metadataExtractor = createDefaultExtractor(); @Override public Mono convert(PayloadExchange exchange) { @@ -79,7 +79,7 @@ public class AuthenticationPayloadExchangeConverter implements PayloadExchangeAu if (WellKnownAuthType.SIMPLE.equals(wellKnownAuthType)) { return simple(rawAuthentication); } - else if (WellKnownAuthType.BEARER.equals(wellKnownAuthType)) { + if (WellKnownAuthType.BEARER.equals(wellKnownAuthType)) { return bearer(rawAuthentication); } throw new IllegalArgumentException("Unknown Mime Type " + wellKnownAuthType); diff --git a/rsocket/src/main/java/org/springframework/security/rsocket/authorization/PayloadExchangeMatcherReactiveAuthorizationManager.java b/rsocket/src/main/java/org/springframework/security/rsocket/authorization/PayloadExchangeMatcherReactiveAuthorizationManager.java index 13e43d15ca..295d460b2f 100644 --- a/rsocket/src/main/java/org/springframework/security/rsocket/authorization/PayloadExchangeMatcherReactiveAuthorizationManager.java +++ b/rsocket/src/main/java/org/springframework/security/rsocket/authorization/PayloadExchangeMatcherReactiveAuthorizationManager.java @@ -28,6 +28,7 @@ import org.springframework.security.core.Authentication; import org.springframework.security.rsocket.api.PayloadExchange; import org.springframework.security.rsocket.util.matcher.PayloadExchangeAuthorizationContext; import org.springframework.security.rsocket.util.matcher.PayloadExchangeMatcher; +import org.springframework.security.rsocket.util.matcher.PayloadExchangeMatcher.MatchResult; import org.springframework.security.rsocket.util.matcher.PayloadExchangeMatcherEntry; import org.springframework.util.Assert; @@ -53,7 +54,7 @@ public final class PayloadExchangeMatcherReactiveAuthorizationManager public Mono check(Mono authentication, PayloadExchange exchange) { return Flux.fromIterable(this.mappings) .concatMap((mapping) -> mapping.getMatcher().matches(exchange) - .filter(PayloadExchangeMatcher.MatchResult::isMatch).map((r) -> r.getVariables()) + .filter(PayloadExchangeMatcher.MatchResult::isMatch).map(MatchResult::getVariables) .flatMap((variables) -> mapping.getEntry().check(authentication, new PayloadExchangeAuthorizationContext(exchange, variables)))) .next().switchIfEmpty(Mono.fromCallable(() -> new AuthorizationDecision(false))); diff --git a/rsocket/src/main/java/org/springframework/security/rsocket/core/PayloadSocketAcceptor.java b/rsocket/src/main/java/org/springframework/security/rsocket/core/PayloadSocketAcceptor.java index 71e4383b50..ebd0ed7d5c 100644 --- a/rsocket/src/main/java/org/springframework/security/rsocket/core/PayloadSocketAcceptor.java +++ b/rsocket/src/main/java/org/springframework/security/rsocket/core/PayloadSocketAcceptor.java @@ -66,10 +66,8 @@ class PayloadSocketAcceptor implements SocketAcceptor { public Mono accept(ConnectionSetupPayload setup, RSocket sendingSocket) { MimeType dataMimeType = parseMimeType(setup.dataMimeType(), this.defaultDataMimeType); Assert.notNull(dataMimeType, "No `dataMimeType` in ConnectionSetupPayload and no default value"); - MimeType metadataMimeType = parseMimeType(setup.metadataMimeType(), this.defaultMetadataMimeType); Assert.notNull(metadataMimeType, "No `metadataMimeType` in ConnectionSetupPayload and no default value"); - // FIXME do we want to make the sendingSocket available in the PayloadExchange return intercept(setup, dataMimeType, metadataMimeType) .flatMap( diff --git a/rsocket/src/main/java/org/springframework/security/rsocket/metadata/BasicAuthenticationDecoder.java b/rsocket/src/main/java/org/springframework/security/rsocket/metadata/BasicAuthenticationDecoder.java index 07ba2ab348..9876fa477e 100644 --- a/rsocket/src/main/java/org/springframework/security/rsocket/metadata/BasicAuthenticationDecoder.java +++ b/rsocket/src/main/java/org/springframework/security/rsocket/metadata/BasicAuthenticationDecoder.java @@ -48,7 +48,6 @@ public class BasicAuthenticationDecoder extends AbstractDecoder { byte[] sizeBytes = new byte[4]; byteBuffer.get(sizeBytes); - int usernameSize = 4; byte[] usernameBytes = new byte[usernameSize]; byteBuffer.get(usernameBytes); diff --git a/rsocket/src/main/java/org/springframework/security/rsocket/util/matcher/PayloadExchangeMatchers.java b/rsocket/src/main/java/org/springframework/security/rsocket/util/matcher/PayloadExchangeMatchers.java index 4285f158e4..ef96a1b1c9 100644 --- a/rsocket/src/main/java/org/springframework/security/rsocket/util/matcher/PayloadExchangeMatchers.java +++ b/rsocket/src/main/java/org/springframework/security/rsocket/util/matcher/PayloadExchangeMatchers.java @@ -24,37 +24,43 @@ import org.springframework.security.rsocket.api.PayloadExchangeType; /** * @author Rob Winch */ -public abstract class PayloadExchangeMatchers { +public final class PayloadExchangeMatchers { + + private PayloadExchangeMatchers() { + } public static PayloadExchangeMatcher setup() { return new PayloadExchangeMatcher() { + @Override public Mono matches(PayloadExchange exchange) { return PayloadExchangeType.SETUP.equals(exchange.getType()) ? MatchResult.match() : MatchResult.notMatch(); } + }; } public static PayloadExchangeMatcher anyRequest() { return new PayloadExchangeMatcher() { + @Override public Mono matches(PayloadExchange exchange) { return exchange.getType().isRequest() ? MatchResult.match() : MatchResult.notMatch(); } + }; } public static PayloadExchangeMatcher anyExchange() { return new PayloadExchangeMatcher() { + @Override public Mono matches(PayloadExchange exchange) { return MatchResult.match(); } + }; } - private PayloadExchangeMatchers() { - } - } diff --git a/rsocket/src/main/java/org/springframework/security/rsocket/util/matcher/RoutePayloadExchangeMatcher.java b/rsocket/src/main/java/org/springframework/security/rsocket/util/matcher/RoutePayloadExchangeMatcher.java index ca9fe9d9ef..d4c4ab8dbe 100644 --- a/rsocket/src/main/java/org/springframework/security/rsocket/util/matcher/RoutePayloadExchangeMatcher.java +++ b/rsocket/src/main/java/org/springframework/security/rsocket/util/matcher/RoutePayloadExchangeMatcher.java @@ -26,10 +26,9 @@ import org.springframework.security.rsocket.api.PayloadExchange; import org.springframework.util.Assert; import org.springframework.util.RouteMatcher; +// FIXME: Pay attention to the package this goes into. It requires spring-messaging for the MetadataExtractor. + /** - * FIXME: Pay attention to the package this goes into. It requires spring-messaging for - * the MetadataExtractor. - * * @author Rob Winch * @since 5.2 */