com.osomapps.pt.auth.SecurityContextHelper   A
last analyzed

Complexity

Total Complexity 5

Size/Duplication

Total Lines 27
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 5
eloc 19
dl 0
loc 27
rs 10
c 1
b 0
f 0

4 Methods

Rating   Name   Duplication   Size   Complexity  
A getUserDetails() 0 7 2
A getCredentials() 0 2 1
A getAuthorities() 0 6 1
A getPrincipal() 0 3 1
1
package com.osomapps.pt.auth;
2
3
import java.util.Collection;
4
import java.util.stream.Collectors;
5
import org.springframework.security.core.GrantedAuthority;
6
import org.springframework.security.core.context.SecurityContextHolder;
7
import org.springframework.security.core.userdetails.UserDetails;
8
import org.springframework.stereotype.Component;
9
10
@Component
11
class SecurityContextHelper {
12
    String getPrincipal() {
13
        return ((UserDetails) SecurityContextHolder.getContext().getAuthentication().getPrincipal())
14
                .getUsername();
15
    }
16
17
    String getCredentials() {
18
        return SecurityContextHolder.getContext().getAuthentication().getCredentials().toString();
19
    }
20
21
    CustomUserDetails getUserDetails() {
22
        final Object details =
23
                SecurityContextHolder.getContext().getAuthentication().getPrincipal();
24
        if (details instanceof CustomUserDetails) {
25
            return (CustomUserDetails) details;
26
        } else {
27
            return null;
28
        }
29
    }
30
31
    Collection<String> getAuthorities() {
32
        final Collection<? extends GrantedAuthority> authorities =
33
                SecurityContextHolder.getContext().getAuthentication().getAuthorities();
34
        return authorities.stream()
35
                .map(authority -> authority.getAuthority())
36
                .collect(Collectors.toList());
37
    }
38
}
39