Remove Optional from Reactive HttpSecurity

This commit is contained in:
Rob Winch 2017-08-29 20:30:04 -05:00
parent 20befc3702
commit 51ad53f76a

View File

@ -68,7 +68,7 @@ public class HttpSecurity {
private HttpBasicBuilder httpBasic; private HttpBasicBuilder httpBasic;
private ReactiveAuthenticationManager authenticationManager; private ReactiveAuthenticationManager authenticationManager;
private Optional<SecurityContextRepository> securityContextRepository = Optional.empty(); private SecurityContextRepository securityContextRepository;
/** /**
* The ServerExchangeMatcher that determines which requests apply to this HttpSecurity instance. * The ServerExchangeMatcher that determines which requests apply to this HttpSecurity instance.
@ -92,7 +92,7 @@ public class HttpSecurity {
public HttpSecurity securityContextRepository(SecurityContextRepository securityContextRepository) { public HttpSecurity securityContextRepository(SecurityContextRepository securityContextRepository) {
Assert.notNull(securityContextRepository, "securityContextRepository cannot be null"); Assert.notNull(securityContextRepository, "securityContextRepository cannot be null");
this.securityContextRepository = Optional.of(securityContextRepository); this.securityContextRepository = securityContextRepository;
return this; return this;
} }
@ -124,10 +124,15 @@ public class HttpSecurity {
if(headers != null) { if(headers != null) {
filters.add(headers.build()); filters.add(headers.build());
} }
securityContextRepositoryWebFilter().ifPresent( f-> filters.add(f)); SecurityContextRepositoryWebFilter securityContextRepositoryWebFilter = securityContextRepositoryWebFilter();
if(securityContextRepositoryWebFilter != null) {
filters.add(securityContextRepositoryWebFilter);
}
if(httpBasic != null) { if(httpBasic != null) {
httpBasic.authenticationManager(authenticationManager); httpBasic.authenticationManager(authenticationManager);
securityContextRepository.ifPresent( scr -> httpBasic.securityContextRepository(scr)) ; if(securityContextRepository != null) {
httpBasic.securityContextRepository(securityContextRepository);
}
filters.add(httpBasic.build()); filters.add(httpBasic.build());
} }
filters.add(new AuthenticationReactorContextFilter()); filters.add(new AuthenticationReactorContextFilter());
@ -142,9 +147,9 @@ public class HttpSecurity {
return new HttpSecurity(); return new HttpSecurity();
} }
private Optional<SecurityContextRepositoryWebFilter> securityContextRepositoryWebFilter() { private SecurityContextRepositoryWebFilter securityContextRepositoryWebFilter() {
return securityContextRepository return this.securityContextRepository == null ? null :
.flatMap( r -> Optional.of(new SecurityContextRepositoryWebFilter(r))); new SecurityContextRepositoryWebFilter(this.securityContextRepository);
} }
public class HttpBasicSpec extends HttpBasicBuilder { public class HttpBasicSpec extends HttpBasicBuilder {