uoa-admin-tools/src/main/java/eu/dnetlib/uoaadmintools/entities/Notifications.java

86 lines
2.0 KiB
Java
Raw Normal View History

package eu.dnetlib.uoaadmintools.entities;
import com.fasterxml.jackson.annotation.JsonProperty;
import org.springframework.data.annotation.Id;
/**
* Created by argirok on 6/7/2018.
*/
public class Notifications {
@Id
@JsonProperty("_id")
private String id;
Boolean notifyForNewManagers = true;
Boolean notifyForNewSubscribers = true;
String managerEmail;
String portalPid;
[Trunk | Admin Tools]: 1. pom.xml: Added dependency for spring security. 2. UoaAdminToolsApplication.java: Import AuthorizationConfiguration.class | Remove SecurityConfig.class from @EnableConfigurationProperties. 3. UoaAdminToolsConfiguration.java: Comment "addInterceptors()" method calling AuthorizationHandler with SecurityConfig. 4. SecurityConfig.java & AuthorizationHandler.java & AuthorizationUtils.java & CommunityInfo.java & UserInfo.java: Commented all contents of these files (files will be deleted in coming commit). 5. PortalSubscribersController.java: Comment imports from commeted files. 6. Notifications.java: Added field "aaiId" get getters and setters. 7. NotificationsController.java: a. Method "getNotifications()" is replaced by "getNotificationsForUser()" (/community/{pid}/notifications) - returns notification settings only for user who made the request (uoa-authorization-li$ b. Path changed for method "getNotifications()": /community/{pid}/notifications/all c. Remove "@RequestBody String email" parameter from method "deleteNotification()" - get email from user who made the request (uoa-authorization-library). d. In method "saveNotification()" get aaiId and email from user who made the request (uoa-authorization-library). e. Added checks and throw Exceptions in all methods. f. Added @PreAuthorize Portal Admins: "getNotifications()" (/community/{pid}/notifications/all) Portal Admins - Curators - Managers: "getNotificationsForUser()" (/community/{pid}/notifications), "deleteNotification()" (/community/{pid}/notifications), "saveNotification()" (/communit$ 8. ExploreController.java: a. Added checks and throw Exceptions in all methods. b. Added @PreAuthorize Portal Admins: "updateExplore()" (/explore/update), "insertExplore()" (/explore/save), "deleteExplore()" (/explore/delete). 9. ConnectController.java: a. Added checks and throw Exceptions in all methods. b. Added @PreAuthorize Portal Admins: "updateConnect()" (/connect/update), "insertConnect()" (/connect/save), "deleteConnect()" (/connect/delete). c. Commented methods "getLayoutForConnect()" and "updateLayoutForConnect()" (/connect/{pid}/layout). 10. CommunityController.java: a. Added checks and throw Exceptions in all methods. b. Added @PreAuthorize Portal Admins: "updateCommunity()" (/community/update), "insertCommunity()" (/community/save), "deleteCommunity()" (/community/delete). Portal Admin - Curators - Managers: "updateLayoutForCommunity()" (/community/{pid}/layout). 11. CuratorController.java: a. In "insertCurator() (/curator) set _id field with aaiId from user who made the request (uoa-authorization-library). b. Added @PreAuthorize Authenticated users: "getCuratorById()" (/curator/{id}), "insertCurator()" (/curator). Portal Admins: "deleteCurators()" (/curator).
2021-02-25 12:57:22 +01:00
String aaiId;
public Notifications(){
}
public Notifications(String managerEmail, String portalPid){
this();
this.portalPid = portalPid;
this.managerEmail = managerEmail;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public Boolean getNotifyForNewManagers() {
return notifyForNewManagers;
}
public void setNotifyForNewManagers(Boolean notifyForNewManagers) {
this.notifyForNewManagers = notifyForNewManagers;
}
public Boolean getNotifyForNewSubscribers() {
return notifyForNewSubscribers;
}
public void setNotifyForNewSubscribers(Boolean notifyForNewSubscribers) {
this.notifyForNewSubscribers = notifyForNewSubscribers;
}
public String getManagerEmail() {
return managerEmail;
}
public void setManagerEmail(String managerEmail) {
this.managerEmail = managerEmail;
}
public String getPortalPid() {
return portalPid;
}
public void setPortalPid(String portalPid) {
this.portalPid = portalPid;
}
[Trunk | Admin Tools]: 1. pom.xml: Added dependency for spring security. 2. UoaAdminToolsApplication.java: Import AuthorizationConfiguration.class | Remove SecurityConfig.class from @EnableConfigurationProperties. 3. UoaAdminToolsConfiguration.java: Comment "addInterceptors()" method calling AuthorizationHandler with SecurityConfig. 4. SecurityConfig.java & AuthorizationHandler.java & AuthorizationUtils.java & CommunityInfo.java & UserInfo.java: Commented all contents of these files (files will be deleted in coming commit). 5. PortalSubscribersController.java: Comment imports from commeted files. 6. Notifications.java: Added field "aaiId" get getters and setters. 7. NotificationsController.java: a. Method "getNotifications()" is replaced by "getNotificationsForUser()" (/community/{pid}/notifications) - returns notification settings only for user who made the request (uoa-authorization-li$ b. Path changed for method "getNotifications()": /community/{pid}/notifications/all c. Remove "@RequestBody String email" parameter from method "deleteNotification()" - get email from user who made the request (uoa-authorization-library). d. In method "saveNotification()" get aaiId and email from user who made the request (uoa-authorization-library). e. Added checks and throw Exceptions in all methods. f. Added @PreAuthorize Portal Admins: "getNotifications()" (/community/{pid}/notifications/all) Portal Admins - Curators - Managers: "getNotificationsForUser()" (/community/{pid}/notifications), "deleteNotification()" (/community/{pid}/notifications), "saveNotification()" (/communit$ 8. ExploreController.java: a. Added checks and throw Exceptions in all methods. b. Added @PreAuthorize Portal Admins: "updateExplore()" (/explore/update), "insertExplore()" (/explore/save), "deleteExplore()" (/explore/delete). 9. ConnectController.java: a. Added checks and throw Exceptions in all methods. b. Added @PreAuthorize Portal Admins: "updateConnect()" (/connect/update), "insertConnect()" (/connect/save), "deleteConnect()" (/connect/delete). c. Commented methods "getLayoutForConnect()" and "updateLayoutForConnect()" (/connect/{pid}/layout). 10. CommunityController.java: a. Added checks and throw Exceptions in all methods. b. Added @PreAuthorize Portal Admins: "updateCommunity()" (/community/update), "insertCommunity()" (/community/save), "deleteCommunity()" (/community/delete). Portal Admin - Curators - Managers: "updateLayoutForCommunity()" (/community/{pid}/layout). 11. CuratorController.java: a. In "insertCurator() (/curator) set _id field with aaiId from user who made the request (uoa-authorization-library). b. Added @PreAuthorize Authenticated users: "getCuratorById()" (/curator/{id}), "insertCurator()" (/curator). Portal Admins: "deleteCurators()" (/curator).
2021-02-25 12:57:22 +01:00
public String getAaiId() {
return aaiId;
}
public void setAaiId(String aaiId) {
this.aaiId = aaiId;
}
@Override
public String toString() {
return "Notifications{" +
"id='" + id + '\'' +
", notifyForNewManagers=" + notifyForNewManagers +
", notifyForNewSubscribers=" + notifyForNewSubscribers +
", managerEmail='" + managerEmail + '\'' +
", portalPid='" + portalPid + '\'' +
'}';
}
}