From 04e671fb4d50e16ea334ed00c365a672780e55e5 Mon Sep 17 00:00:00 2001 From: Roman Matiushchenko Date: Thu, 20 Feb 2020 14:59:37 +0200 Subject: [PATCH] Instantiate exceptions lazily Add lazy Exception instantiation to reduce allocations Fixes gh-7995 --- .../JwtIssuerReactiveAuthenticationManagerResolver.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/oauth2/oauth2-resource-server/src/main/java/org/springframework/security/oauth2/server/resource/authentication/JwtIssuerReactiveAuthenticationManagerResolver.java b/oauth2/oauth2-resource-server/src/main/java/org/springframework/security/oauth2/server/resource/authentication/JwtIssuerReactiveAuthenticationManagerResolver.java index 40ff610edc..a30359176b 100644 --- a/oauth2/oauth2-resource-server/src/main/java/org/springframework/security/oauth2/server/resource/authentication/JwtIssuerReactiveAuthenticationManagerResolver.java +++ b/oauth2/oauth2-resource-server/src/main/java/org/springframework/security/oauth2/server/resource/authentication/JwtIssuerReactiveAuthenticationManagerResolver.java @@ -121,7 +121,7 @@ public final class JwtIssuerReactiveAuthenticationManagerResolver return this.issuerConverter.convert(exchange) .flatMap(issuer -> this.issuerAuthenticationManagerResolver.resolve(issuer).switchIfEmpty( - Mono.error(new InvalidBearerTokenException("Invalid issuer " + issuer))) + Mono.error(() -> new InvalidBearerTokenException("Invalid issuer " + issuer))) ); } @@ -142,7 +142,7 @@ public final class JwtIssuerReactiveAuthenticationManagerResolver try { String issuer = JWTParser.parse(token.getToken()).getJWTClaimsSet().getIssuer(); return Mono.justOrEmpty(issuer).switchIfEmpty( - Mono.error(new InvalidBearerTokenException("Missing issuer"))); + Mono.error(() -> new InvalidBearerTokenException("Missing issuer"))); } catch (Exception e) { return Mono.error(new InvalidBearerTokenException(e.getMessage())); }