From 0b6a7da787c2d856da9c5c18cee2168d64a7794f Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Tue, 16 Oct 2018 15:12:14 +0200 Subject: [PATCH] DATACMNS-1403 - Polishing. Rewrite auditing example to functional use of java.util.Optional. Original pull request: #321. --- src/main/asciidoc/auditing.adoc | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/src/main/asciidoc/auditing.adoc b/src/main/asciidoc/auditing.adoc index b112ebccd..fd5fc8f45 100644 --- a/src/main/asciidoc/auditing.adoc +++ b/src/main/asciidoc/auditing.adoc @@ -49,14 +49,11 @@ class SpringSecurityAuditorAware implements AuditorAware { public Optional getCurrentAuditor() { - Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); - - if (authentication == null || !authentication.isAuthenticated()) { - return Optional.empty(); - } - - MyUserDetails myUserDetails = ((MyUserDetails) authentication.getPrincipal()).getUser(); - return Optional.of(myUserDetails); + return Optional.ofNullable(SecurityContextHolder.getContext()) + .map(SecurityContext::getAuthentication) + .filter(Authentication::isAuthenticated) + .map(Authentication::getPrincipal) + .map(User.class::cast); } } ----