Loading gms/src/main/java/it/inaf/ia2/gms/authn/SessionData.java +1 −1 Original line number Original line Diff line number Diff line Loading @@ -26,7 +26,7 @@ public class SessionData { public void init() { public void init() { CustomAuthenticationData authn = (CustomAuthenticationData) ((OAuth2Authentication) request.getUserPrincipal()).getUserAuthentication(); CustomAuthenticationData authn = (CustomAuthenticationData) ((OAuth2Authentication) request.getUserPrincipal()).getUserAuthentication(); userId = (String) authn.getPrincipal(); userId = (String) authn.getPrincipal(); accessToken = (String) authn.getAttributes().get("access_token"); accessToken = (String) authn.getAccessToken().getValue(); if (!usersRepository.findById(userId).isPresent()) { if (!usersRepository.findById(userId).isPresent()) { User user = new User(); User user = new User(); Loading gms/src/main/java/it/inaf/ia2/gms/controller/GroupsController.java +0 −3 Original line number Original line Diff line number Diff line package it.inaf.ia2.gms.controller; package it.inaf.ia2.gms.controller; import it.inaf.ia2.gms.authn.SessionData; import it.inaf.ia2.gms.authn.SessionData; import it.inaf.ia2.gms.exception.BadRequestException; import it.inaf.ia2.gms.model.CreateGroupRequest; import it.inaf.ia2.gms.model.CreateGroupRequest; import it.inaf.ia2.gms.model.GroupNode; import it.inaf.ia2.gms.model.GroupNode; import it.inaf.ia2.gms.model.GroupsModelRequest; import it.inaf.ia2.gms.model.GroupsModelRequest; Loading @@ -14,9 +13,7 @@ import it.inaf.ia2.gms.persistence.model.User; import it.inaf.ia2.gms.service.GroupsModelService; import it.inaf.ia2.gms.service.GroupsModelService; import it.inaf.ia2.gms.service.GroupsService; import it.inaf.ia2.gms.service.GroupsService; import it.inaf.ia2.gms.service.UsersService; import it.inaf.ia2.gms.service.UsersService; import java.util.HashMap; import java.util.List; import java.util.List; import java.util.Map; import javax.validation.Valid; import javax.validation.Valid; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus; Loading gms/src/main/java/it/inaf/ia2/gms/controller/PermissionsController.java 0 → 100644 +36 −0 Original line number Original line Diff line number Diff line package it.inaf.ia2.gms.controller; import it.inaf.ia2.gms.authn.SessionData; import it.inaf.ia2.gms.model.Permission; import it.inaf.ia2.gms.persistence.model.User; import it.inaf.ia2.gms.service.PermissionsService; import it.inaf.ia2.gms.service.UsersService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @RestController public class PermissionsController { @Autowired private SessionData session; @Autowired private UsersService usersService; @Autowired private PermissionsService permissionsService; @DeleteMapping(value = "/permission", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) public ResponseEntity deletePermission(@RequestParam("user") String userId, @RequestParam("group") String group, @RequestParam("permission") Permission permission) { User user = getUser(); return null; } private User getUser() { return usersService.getUserById(session.getUserId()); } } gms/src/main/java/it/inaf/ia2/gms/controller/UsersController.java 0 → 100644 +23 −0 Original line number Original line Diff line number Diff line package it.inaf.ia2.gms.controller; import it.inaf.ia2.gms.model.RapUser; import it.inaf.ia2.gms.rap.RapClient; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @RestController public class UsersController { @Autowired private RapClient rapClient; @GetMapping(value = "users", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) public ResponseEntity<List<RapUser>> searchUsers(@RequestParam("search") String searchText) { return ResponseEntity.ok(rapClient.searchUsers(searchText)); } } gms/src/main/java/it/inaf/ia2/gms/model/Identity.java +27 −0 Original line number Original line Diff line number Diff line Loading @@ -4,6 +4,9 @@ public class Identity { private IdentityType type; private IdentityType type; private String email; private String email; private String name; private String surname; private boolean primary; public IdentityType getType() { public IdentityType getType() { return type; return type; Loading @@ -20,4 +23,28 @@ public class Identity { public void setEmail(String email) { public void setEmail(String email) { this.email = email; this.email = email; } } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSurname() { return surname; } public void setSurname(String surname) { this.surname = surname; } public boolean isPrimary() { return primary; } public void setPrimary(boolean primary) { this.primary = primary; } } } Loading
gms/src/main/java/it/inaf/ia2/gms/authn/SessionData.java +1 −1 Original line number Original line Diff line number Diff line Loading @@ -26,7 +26,7 @@ public class SessionData { public void init() { public void init() { CustomAuthenticationData authn = (CustomAuthenticationData) ((OAuth2Authentication) request.getUserPrincipal()).getUserAuthentication(); CustomAuthenticationData authn = (CustomAuthenticationData) ((OAuth2Authentication) request.getUserPrincipal()).getUserAuthentication(); userId = (String) authn.getPrincipal(); userId = (String) authn.getPrincipal(); accessToken = (String) authn.getAttributes().get("access_token"); accessToken = (String) authn.getAccessToken().getValue(); if (!usersRepository.findById(userId).isPresent()) { if (!usersRepository.findById(userId).isPresent()) { User user = new User(); User user = new User(); Loading
gms/src/main/java/it/inaf/ia2/gms/controller/GroupsController.java +0 −3 Original line number Original line Diff line number Diff line package it.inaf.ia2.gms.controller; package it.inaf.ia2.gms.controller; import it.inaf.ia2.gms.authn.SessionData; import it.inaf.ia2.gms.authn.SessionData; import it.inaf.ia2.gms.exception.BadRequestException; import it.inaf.ia2.gms.model.CreateGroupRequest; import it.inaf.ia2.gms.model.CreateGroupRequest; import it.inaf.ia2.gms.model.GroupNode; import it.inaf.ia2.gms.model.GroupNode; import it.inaf.ia2.gms.model.GroupsModelRequest; import it.inaf.ia2.gms.model.GroupsModelRequest; Loading @@ -14,9 +13,7 @@ import it.inaf.ia2.gms.persistence.model.User; import it.inaf.ia2.gms.service.GroupsModelService; import it.inaf.ia2.gms.service.GroupsModelService; import it.inaf.ia2.gms.service.GroupsService; import it.inaf.ia2.gms.service.GroupsService; import it.inaf.ia2.gms.service.UsersService; import it.inaf.ia2.gms.service.UsersService; import java.util.HashMap; import java.util.List; import java.util.List; import java.util.Map; import javax.validation.Valid; import javax.validation.Valid; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus; Loading
gms/src/main/java/it/inaf/ia2/gms/controller/PermissionsController.java 0 → 100644 +36 −0 Original line number Original line Diff line number Diff line package it.inaf.ia2.gms.controller; import it.inaf.ia2.gms.authn.SessionData; import it.inaf.ia2.gms.model.Permission; import it.inaf.ia2.gms.persistence.model.User; import it.inaf.ia2.gms.service.PermissionsService; import it.inaf.ia2.gms.service.UsersService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @RestController public class PermissionsController { @Autowired private SessionData session; @Autowired private UsersService usersService; @Autowired private PermissionsService permissionsService; @DeleteMapping(value = "/permission", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) public ResponseEntity deletePermission(@RequestParam("user") String userId, @RequestParam("group") String group, @RequestParam("permission") Permission permission) { User user = getUser(); return null; } private User getUser() { return usersService.getUserById(session.getUserId()); } }
gms/src/main/java/it/inaf/ia2/gms/controller/UsersController.java 0 → 100644 +23 −0 Original line number Original line Diff line number Diff line package it.inaf.ia2.gms.controller; import it.inaf.ia2.gms.model.RapUser; import it.inaf.ia2.gms.rap.RapClient; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @RestController public class UsersController { @Autowired private RapClient rapClient; @GetMapping(value = "users", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) public ResponseEntity<List<RapUser>> searchUsers(@RequestParam("search") String searchText) { return ResponseEntity.ok(rapClient.searchUsers(searchText)); } }
gms/src/main/java/it/inaf/ia2/gms/model/Identity.java +27 −0 Original line number Original line Diff line number Diff line Loading @@ -4,6 +4,9 @@ public class Identity { private IdentityType type; private IdentityType type; private String email; private String email; private String name; private String surname; private boolean primary; public IdentityType getType() { public IdentityType getType() { return type; return type; Loading @@ -20,4 +23,28 @@ public class Identity { public void setEmail(String email) { public void setEmail(String email) { this.email = email; this.email = email; } } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSurname() { return surname; } public void setSurname(String surname) { this.surname = surname; } public boolean isPrimary() { return primary; } public void setPrimary(boolean primary) { this.primary = primary; } } }