Commit 2e517208 authored by Sonia Zorba's avatar Sonia Zorba
Browse files

Added creation time and creator user to groups, memberships and permissions entities

parent 62a3e718
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -9,7 +9,7 @@ import it.inaf.ia2.gms.service.GroupsService;
import org.springframework.stereotype.Service;

@Service
public class GroupsManager {
public class GroupsManager extends UserAwareComponent {

    private final GroupsService groupsService;
    private final PermissionsManager permissionsManager;
@@ -45,7 +45,7 @@ public class GroupsManager {

        verifyUserCanManageGroup(parent);

        return groupsService.addGroup(parent, childGroupName, leaf);
        return groupsService.addGroup(parent, childGroupName, leaf, getCurrentUserId());
    }

    public GroupEntity updateGroup(String groupId, String newGroupName, boolean leaf) {
+2 −1
Original line number Diff line number Diff line
@@ -153,9 +153,10 @@ public class InvitedRegistrationManager extends UserAwareComponent {
            MembershipEntity membershipEntity = new MembershipEntity();
            membershipEntity.setUserId(userId);
            membershipEntity.setGroupId(groupId);
            membershipEntity.setCreatedBy(getCurrentUserId());
            membershipsDAO.addMember(membershipEntity);

            permissionsService.addPermission(groupEntity, userId, entry.getValue());
            permissionsService.addPermission(groupEntity, userId, entry.getValue(), getCurrentUserId());
        }

        invitedRegistration.setUserId(getCurrentUserId());
+1 −0
Original line number Diff line number Diff line
@@ -83,6 +83,7 @@ public class MembershipManager extends UserAwareComponent {
        MembershipEntity membership = new MembershipEntity();
        membership.setGroupId(group.getId());
        membership.setUserId(userId);
        membership.setCreatedBy(getCurrentUserId());

        membership = membershipsDAO.addMember(membership);
        loggingDAO.logAction("Added member, group_id=" + group.getId() + ", user_id=" + userId);
+4 −4
Original line number Diff line number Diff line
@@ -81,22 +81,22 @@ public class PermissionsManager extends UserAwareComponent {

        if (currentUserPermission == Permission.MANAGE_MEMBERS && permission == Permission.VIEW_MEMBERS) {
            // Automatically assign the VIEW_MEMBERS permission ("Add collaborator" feature)
            return permissionsService.addPermission(group, userId, Permission.VIEW_MEMBERS);
            return permissionsService.addPermission(group, userId, Permission.VIEW_MEMBERS, getCurrentUserId());
        } else if (currentUserPermission == Permission.ADMIN) {
            // Admin users can specify a permission
            return permissionsService.addPermission(group, userId, permission);
            return permissionsService.addPermission(group, userId, permission, getCurrentUserId());
        }
        throw unauthorizedExceptionSupplier(group).get();
    }

    public PermissionEntity createOrUpdatePermission(GroupEntity group, String userId, Permission permission) {
        verifyUserCanManagePermissions(group);
        return permissionsService.createOrUpdatePermission(group, userId, permission);
        return permissionsService.createOrUpdatePermission(group, userId, permission, getCurrentUserId());
    }

    public PermissionEntity updatePermission(GroupEntity group, String userId, Permission permission) {
        verifyUserCanManagePermissions(group);
        return permissionsService.updatePermission(group, userId, permission);
        return permissionsService.updatePermission(group, userId, permission, getCurrentUserId());
    }

    public void removePermission(GroupEntity group, String userId) {
+20 −0
Original line number Diff line number Diff line
package it.inaf.ia2.gms.model;

import java.util.Date;

public class GroupNode {

    private String groupId;
@@ -8,6 +10,8 @@ public class GroupNode {
    private boolean hasChildren;
    private boolean leaf;
    private boolean locked;
    private Date creationTime;
    private String createdBy;

    public String getGroupId() {
        return groupId;
@@ -56,4 +60,20 @@ public class GroupNode {
    public void setLocked(boolean locked) {
        this.locked = locked;
    }

    public String getCreatedBy() {
        return createdBy;
    }

    public void setCreatedBy(String createdBy) {
        this.createdBy = createdBy;
    }

    public Date getCreationTime() {
        return creationTime;
    }

    public void setCreationTime(Date creationTime) {
        this.creationTime = creationTime;
    }
}
Loading