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

Complexity

Total Complexity 3

Size/Duplication

Total Lines 16
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 3
eloc 11
c 1
b 0
f 0
dl 0
loc 16
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A CustomUserDetailsService(PtUserRepository) 0 2 1
A loadUserByUsername(String) 0 7 2
1
package com.osomapps.pt.auth;
2
3
import com.osomapps.pt.admin.ptuser.PtUser;
4
import com.osomapps.pt.admin.ptuser.PtUserRepository;
5
import java.util.List;
6
import org.springframework.security.core.userdetails.UserDetails;
7
import org.springframework.security.core.userdetails.UserDetailsService;
8
import org.springframework.security.core.userdetails.UsernameNotFoundException;
9
import org.springframework.stereotype.Service;
10
11
@Service("customUserDetailsService")
12
public class CustomUserDetailsService implements UserDetailsService {
13
14
    private final PtUserRepository ptUserRepository;
15
16
    CustomUserDetailsService(PtUserRepository ptUserRepository) {
17
        this.ptUserRepository = ptUserRepository;
18
    }
19
20
    @Override
21
    public UserDetails loadUserByUsername(String username) {
22
        final List<PtUser> ptUsers = ptUserRepository.findByLogin(username);
23
        if (ptUsers.isEmpty()) {
24
            throw new UsernameNotFoundException("No user present with username: " + username);
25
        }
26
        return new CustomUserDetails(ptUsers.get(ptUsers.size() - 1));
27
    }
28
}
29