From acbf2776836a82a03389078b58a8e0e66c42e6ff Mon Sep 17 00:00:00 2001 From: Lucio Lelii Date: Tue, 30 Apr 2019 12:56:22 +0000 Subject: [PATCH] git-svn-id: https://svn.d4science-ii.research-infrastructures.eu/gcube/branches/data-access/storagehub-webapp/1.0@179197 82a268e6-3cf1-43bd-a215-b396298e98cf --- .../access/storagehub/handlers/UnshareHandler.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/gcube/data/access/storagehub/handlers/UnshareHandler.java b/src/main/java/org/gcube/data/access/storagehub/handlers/UnshareHandler.java index dffb7fd..20bc9f0 100644 --- a/src/main/java/org/gcube/data/access/storagehub/handlers/UnshareHandler.java +++ b/src/main/java/org/gcube/data/access/storagehub/handlers/UnshareHandler.java @@ -80,7 +80,8 @@ public class UnshareHandler { } private String unshareAll(String login, Session ses, SharedFolder item) throws StorageHubException, BackendGenericError, RepositoryException{ - + log.info("unshare all called"); + authChecker.checkAdministratorControl(ses, item); if (!login.equals(item.getOwner())) throw new UserNotAuthorizedException("user "+login+" not authorized to unshare all"); @@ -123,7 +124,6 @@ public class UnshareHandler { sharedItemNode.removeSharedSet(); ses.save(); log.debug("all the users have been removed, the folder is totally unshared"); - return unsharedNode.getIdentifier(); } @@ -134,7 +134,7 @@ public class UnshareHandler { private String unshareCaller(String login, Session ses, SharedFolder item) throws StorageHubException, RepositoryException{ if (login.equals(item.getOwner())) - throw new InvalidCallParameters("the callor is the owner, the folder cannot be unshared"); + throw new InvalidCallParameters("the caller is the owner, the folder cannot be unshared"); if (item.getUsers().getMap().get(login)==null) throw new InvalidCallParameters("the folder is not shared with user "+login); @@ -195,7 +195,7 @@ public class UnshareHandler { AccessControlEntry entryToDelete= null; for (AccessControlEntry ace :acls.getAccessControlEntries()) { - if (ace.getPrincipal().getName().equals(login)) { + if (ace.getPrincipal().getName().equals(user)) { entryToDelete = ace; break; } @@ -203,9 +203,11 @@ public class UnshareHandler { } if (entryToDelete!=null) acls.removeAccessControlEntry(entryToDelete); + + log.debug("removed Access control entry for user {}",user); } - log.debug("removed Access control entry for user {}",login); + Node sharedItemNode = ses.getNodeByIdentifier(item.getId()); Node usersNode = sharedItemNode.getNode(NodeConstants.USERS_NAME); usersNode.remove();