diff --git a/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceServiceImpl.java b/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceServiceImpl.java index a23a5ae..1c0edf8 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceServiceImpl.java +++ b/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceServiceImpl.java @@ -2798,7 +2798,11 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT List listEACL = new ArrayList(listACL.size()); for (WorkspaceACL workspaceACL : listACL) { - listEACL.add(new ExtendedWorkspaceACL(workspaceACL.getId(), workspaceACL.getLabel(), workspaceACL.getDefaultValue(), workspaceACL.getUserType(), workspaceACL.getDescription(), wsFolder.getOwner().getPortalLogin(), folderId)); + + boolean isBaseSharedFolder = (wsFolder.getId().compareTo(folderId)==0)?true:false; + ExtendedWorkspaceACL eac = new ExtendedWorkspaceACL(workspaceACL.getId(), workspaceACL.getLabel(), workspaceACL.getDefaultValue(), workspaceACL.getUserType(), workspaceACL.getDescription(), wsFolder.getOwner().getPortalLogin(), folderId, isBaseSharedFolder); + workspaceLogger.trace("ACL "+workspaceACL+" converted in: "+eac); + listEACL.add(eac); } return listEACL; diff --git a/src/main/java/org/gcube/portlets/user/workspace/shared/ExtendedWorkspaceACL.java b/src/main/java/org/gcube/portlets/user/workspace/shared/ExtendedWorkspaceACL.java index 90925d1..ebcb4e0 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/shared/ExtendedWorkspaceACL.java +++ b/src/main/java/org/gcube/portlets/user/workspace/shared/ExtendedWorkspaceACL.java @@ -16,6 +16,9 @@ public class ExtendedWorkspaceACL extends WorkspaceACL{ private String loginOwner; private String workspaceItemId; + + + private boolean isBaseSharedFolder; /** * @@ -32,10 +35,11 @@ public class ExtendedWorkspaceACL extends WorkspaceACL{ * @param loginOwner * @param workspaceItemId */ - public ExtendedWorkspaceACL(String id, String label, boolean defaultValue, USER_TYPE userType, String description, String loginOwner, String workspaceItemId) { + public ExtendedWorkspaceACL(String id, String label, boolean defaultValue, USER_TYPE userType, String description, String loginOwner, String workspaceItemId, boolean isBaseSharedFolder) { super(id, label, defaultValue, userType, description); this.loginOwner = loginOwner; this.workspaceItemId = workspaceItemId; + this.isBaseSharedFolder = isBaseSharedFolder; } @@ -57,6 +61,13 @@ public class ExtendedWorkspaceACL extends WorkspaceACL{ this.workspaceItemId = workspaceItemId; } + public boolean isBaseSharedFolder() { + return isBaseSharedFolder; + } + + public void setBaseSharedFolder(boolean isBaseSharedFolder) { + this.isBaseSharedFolder = isBaseSharedFolder; + } @Override public String toString() { @@ -65,18 +76,9 @@ public class ExtendedWorkspaceACL extends WorkspaceACL{ builder.append(loginOwner); builder.append(", workspaceItemId="); builder.append(workspaceItemId); - builder.append(", getId()="); - builder.append(getId()); - builder.append(", getLabel()="); - builder.append(getLabel()); - builder.append(", getDefaultValue()="); - builder.append(getDefaultValue()); - builder.append(", getUserType()="); - builder.append(getUserType()); - builder.append(", getDescription()="); - builder.append(getDescription()); + builder.append(", isBaseSharedFolder="); + builder.append(isBaseSharedFolder); builder.append("]"); return builder.toString(); } - }