|
|
- package ru.digitalbanana.demoresourceserver.web.controller;
-
- import java.util.Collections;
- import java.util.List;
- import java.util.Map;
- import java.util.Objects;
- import java.util.Set;
- import java.util.stream.Collectors;
- import java.util.stream.StreamSupport;
-
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.security.core.annotation.AuthenticationPrincipal;
- import org.springframework.security.oauth2.jwt.Jwt;
- import org.springframework.web.bind.annotation.CrossOrigin;
- import org.springframework.web.bind.annotation.GetMapping;
- import org.springframework.web.bind.annotation.PathVariable;
- import org.springframework.web.bind.annotation.RestController;
-
- import lombok.extern.slf4j.Slf4j;
- import ru.digitalbanana.demoresourceserver.persistence.model.UserEntity;
- import ru.digitalbanana.demoresourceserver.service.UserService;
-
- @Slf4j
- @CrossOrigin(origins = "*")
- @RestController
- public class UserInfoController {
-
- private final UserService userService;
-
- @Autowired
- public UserInfoController(final UserService userService) {
- this.userService = userService;
- }
-
- @GetMapping(value = "/userinfo")
- public String userinfo(@AuthenticationPrincipal Jwt principal) {
- return principal.getClaimAsString("email");
- }
-
- @GetMapping(value = "/users")
- public List<UserEntity> allUsers() {
- log.debug("Request all users");
- return StreamSupport
- .stream(userService.findAll().spliterator(), false)
- .filter(user -> user.getEmail() != null)
- .collect(Collectors.toList())
- ;
- }
-
- }
|