loadUserByUsername(String)   A
last analyzed

Complexity

Conditions 2

Size

Total Lines 7
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 6
c 1
b 0
f 0
dl 0
loc 7
rs 10
cc 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