Skip to content

Commit

Permalink
[#10] Refactor: Optional.get() => Optional.orElseGet() 으로 변경 (피드백)
Browse files Browse the repository at this point in the history
- 존재하지 않는 User의 경우 빈 User 객체를 생성함.
- User.matchPassword()에서 빈 객체인 경우를 고려하여 null 검사를 수행
  • Loading branch information
beginin15 authored and ksundong committed Mar 26, 2020
1 parent 977d5fa commit 85d91ae
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@

import javax.servlet.http.HttpSession;
import java.security.InvalidParameterException;
import java.util.Optional;

@RestController
@RequestMapping("/api/users")
Expand Down Expand Up @@ -48,11 +47,7 @@ public User createUser(@RequestBody User user) {

@PostMapping("/login")
public boolean login(@RequestBody User loginUser, HttpSession session) {
Optional<User> optionalUser = userRepository.findByUserId(loginUser.getUserId());
if (!optionalUser.isPresent())
return false;

User user = optionalUser.get();
User user = userRepository.findByUserId(loginUser.getUserId()).orElseGet(User::new);
if (!user.matchPassword(loginUser))
return false;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,6 @@ public boolean validate() {
}

public boolean matchPassword(User loginUser) {
return this.password.equals(loginUser.password);
return this.password != null && this.password.equals(loginUser.password);
}
}

0 comments on commit 85d91ae

Please sign in to comment.