From a39640271a3bc0304a584d8a4345065d5c3dceb7 Mon Sep 17 00:00:00 2001 From: Lucio Lelii Date: Wed, 5 Jun 2019 16:00:57 +0000 Subject: [PATCH] git-svn-id: https://svn.d4science-ii.research-infrastructures.eu/gcube/branches/data-access/storagehub-webapp/1.0@179673 82a268e6-3cf1-43bd-a215-b396298e98cf --- .../storagehub/handlers/content/ImageHandler.java | 2 +- .../data/access/storagehub/services/ACLManager.java | 11 ++++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/gcube/data/access/storagehub/handlers/content/ImageHandler.java b/src/main/java/org/gcube/data/access/storagehub/handlers/content/ImageHandler.java index 8250899..4d0cd91 100644 --- a/src/main/java/org/gcube/data/access/storagehub/handlers/content/ImageHandler.java +++ b/src/main/java/org/gcube/data/access/storagehub/handlers/content/ImageHandler.java @@ -19,7 +19,7 @@ import org.gcube.common.storagehub.model.types.ItemAction; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -@MimeTypeHandler({"image/gif", "image/jpeg","image/png","image/svg+xml"}) +@MimeTypeHandler({"image/gif", "image/jpeg","image/png" /*, "image/svg+xml"*/}) public class ImageHandler implements ContentHandler{ private static final int THUMB_MAX_DIM = 300; diff --git a/src/main/java/org/gcube/data/access/storagehub/services/ACLManager.java b/src/main/java/org/gcube/data/access/storagehub/services/ACLManager.java index edff108..be90063 100644 --- a/src/main/java/org/gcube/data/access/storagehub/services/ACLManager.java +++ b/src/main/java/org/gcube/data/access/storagehub/services/ACLManager.java @@ -35,6 +35,7 @@ import org.gcube.common.storagehub.model.exceptions.InvalidCallParameters; import org.gcube.common.storagehub.model.exceptions.InvalidItemException; import org.gcube.common.storagehub.model.exceptions.StorageHubException; import org.gcube.common.storagehub.model.exceptions.UserNotAuthorizedException; +import org.gcube.common.storagehub.model.items.FolderItem; import org.gcube.common.storagehub.model.items.Item; import org.gcube.common.storagehub.model.items.SharedFolder; import org.gcube.common.storagehub.model.types.ACLList; @@ -198,11 +199,16 @@ public class ACLManager { @GET @Path("{id}/acls/user/{user}/canwrite") - public Boolean checkAccess(@PathParam("user") String user) { - InnerMethodName.instance.set("checkAccess"); + public Boolean canWriteInto(@PathParam("user") String user) { + InnerMethodName.instance.set("canWriteIntoFolder"); Session ses = null; Boolean canWrite = false; try{ + Node node = ses.getNodeByIdentifier(id); + Item item = node2Item.getItem(node, Excludes.ALL); + if (!(item instanceof FolderItem)) + throw new InvalidItemException("this method can be applied only to folder"); + try { authChecker.checkWriteAuthorizationControl(ses, id, true); }catch (UserNotAuthorizedException e) { @@ -220,7 +226,6 @@ public class ACLManager { ses.logout(); } return canWrite; - } }