From 51ad53f76a9d2c2341006a494f7acda9c296624f Mon Sep 17 00:00:00 2001 From: Rob Winch Date: Tue, 29 Aug 2017 20:30:04 -0500 Subject: [PATCH] Remove Optional from Reactive HttpSecurity --- .../config/web/server/HttpSecurity.java | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/config/src/main/java/org/springframework/security/config/web/server/HttpSecurity.java b/config/src/main/java/org/springframework/security/config/web/server/HttpSecurity.java index 520598a23d..f6928c3121 100644 --- a/config/src/main/java/org/springframework/security/config/web/server/HttpSecurity.java +++ b/config/src/main/java/org/springframework/security/config/web/server/HttpSecurity.java @@ -68,7 +68,7 @@ public class HttpSecurity { private HttpBasicBuilder httpBasic; private ReactiveAuthenticationManager authenticationManager; - private Optional securityContextRepository = Optional.empty(); + private SecurityContextRepository securityContextRepository; /** * The ServerExchangeMatcher that determines which requests apply to this HttpSecurity instance. @@ -92,7 +92,7 @@ public class HttpSecurity { public HttpSecurity securityContextRepository(SecurityContextRepository securityContextRepository) { Assert.notNull(securityContextRepository, "securityContextRepository cannot be null"); - this.securityContextRepository = Optional.of(securityContextRepository); + this.securityContextRepository = securityContextRepository; return this; } @@ -124,10 +124,15 @@ public class HttpSecurity { if(headers != null) { filters.add(headers.build()); } - securityContextRepositoryWebFilter().ifPresent( f-> filters.add(f)); + SecurityContextRepositoryWebFilter securityContextRepositoryWebFilter = securityContextRepositoryWebFilter(); + if(securityContextRepositoryWebFilter != null) { + filters.add(securityContextRepositoryWebFilter); + } if(httpBasic != null) { httpBasic.authenticationManager(authenticationManager); - securityContextRepository.ifPresent( scr -> httpBasic.securityContextRepository(scr)) ; + if(securityContextRepository != null) { + httpBasic.securityContextRepository(securityContextRepository); + } filters.add(httpBasic.build()); } filters.add(new AuthenticationReactorContextFilter()); @@ -142,9 +147,9 @@ public class HttpSecurity { return new HttpSecurity(); } - private Optional securityContextRepositoryWebFilter() { - return securityContextRepository - .flatMap( r -> Optional.of(new SecurityContextRepositoryWebFilter(r))); + private SecurityContextRepositoryWebFilter securityContextRepositoryWebFilter() { + return this.securityContextRepository == null ? null : + new SecurityContextRepositoryWebFilter(this.securityContextRepository); } public class HttpBasicSpec extends HttpBasicBuilder {