diff --git a/CHANGELOG.md b/CHANGELOG.md
index d76138f..6867cbd 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,10 @@
All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
+## [v1.4.2-SNAPSHOT] - 2021-04-06
+
+Removed legacy auth dependency
+
## [v1.4.1] - 2021-01-26
- Fix Bug #20552 Workspace widget item counter no longer works
diff --git a/pom.xml b/pom.xml
index 0d18e39..c5f76b3 100644
--- a/pom.xml
+++ b/pom.xml
@@ -13,7 +13,7 @@
workspace-widget-portlet
war
workspace-widget-portlet Portlet
- 1.4.1
+ 1.4.2-SNAPSHOT
Workspace Widget Portlet is a small Front-end component looking like G Drive which exposes the content of the user's workspace or VRE Folders in read only mode.
@@ -36,7 +36,7 @@
org.gcube.distribution
maven-portal-bom
- 3.6.0
+ 3.6.1-SNAPSHOT
pom
import
diff --git a/src/main/java/org/gcube/portlets/user/wswidget/ItemBuilder.java b/src/main/java/org/gcube/portlets/user/wswidget/ItemBuilder.java
index d8df835..e1d9371 100644
--- a/src/main/java/org/gcube/portlets/user/wswidget/ItemBuilder.java
+++ b/src/main/java/org/gcube/portlets/user/wswidget/ItemBuilder.java
@@ -25,6 +25,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+@SuppressWarnings("deprecation")
public class ItemBuilder {
public static final Logger _log = LoggerFactory.getLogger(ItemBuilder.class);
@@ -37,6 +38,7 @@ public class ItemBuilder {
* @param currentUserName
* @return
*/
+ @SuppressWarnings("deprecation")
public static WSItem getItem(WSItem parent, Item workspaceItem, String workspaceItemPath, String currentUserName) {
ItemType type = getItemType(workspaceItem);
boolean isFolder = type.equals(ItemType.PRIVATE_FOLDER)?true:false;
diff --git a/src/main/java/org/gcube/portlets/user/wswidget/StorageHubServiceUtil.java b/src/main/java/org/gcube/portlets/user/wswidget/StorageHubServiceUtil.java
index 51b13ee..f901598 100644
--- a/src/main/java/org/gcube/portlets/user/wswidget/StorageHubServiceUtil.java
+++ b/src/main/java/org/gcube/portlets/user/wswidget/StorageHubServiceUtil.java
@@ -7,9 +7,9 @@ import java.util.List;
import javax.portlet.ResourceRequest;
import javax.servlet.http.HttpServletRequest;
-import org.gcube.common.authorization.library.provider.SecurityTokenProvider;
import org.gcube.common.portal.GCubePortalConstants;
import org.gcube.common.portal.PortalContext;
+import org.gcube.common.scope.api.ScopeProvider;
import org.gcube.common.storagehub.client.plugins.AbstractPlugin;
import org.gcube.common.storagehub.client.proxies.ItemManagerClient;
import org.gcube.common.storagehub.client.proxies.WorkspaceManagerClient;
@@ -35,7 +35,6 @@ public class StorageHubServiceUtil {
WSItem toReturn = new WSItem(itemId, itemName, true);
_log.debug("getItemChildren folder/item = " + itemId);
ArrayList children = new ArrayList<>();
- SecurityTokenProvider.instance.set(authUser.getSecurityToken());
ItemManagerClient client = AbstractPlugin.item().build();
List extends Item> theChildren = null;
try {
@@ -68,10 +67,6 @@ public class StorageHubServiceUtil {
*
*/
public static int getItemChildrenCount(ResourceRequest request, String itemId) {
- String userName = Utils.getCurrentUser(request).getUsername();
- String scope = Utils.getCurrentContext(request);
- String authorizationToken = Utils.getCurrentUserToken(scope, userName);
- SecurityTokenProvider.instance.set(authorizationToken);
ItemManagerClient client = AbstractPlugin.item().build();
int toReturn = -1;
try {
@@ -91,7 +86,6 @@ public class StorageHubServiceUtil {
*/
public static List getRootChildren(AuthorizedUser authUser, int from, int offset) {
try {
- SecurityTokenProvider.instance.set(authUser.getSecurityToken());
WorkspaceManagerClient client = AbstractPlugin.workspace().build();
Item itemRoot = client.getWorkspace("hl:accounting");
WSItem root = new WSItem(itemRoot.getId(), Utils.HOME_LABEL, true);
@@ -112,7 +106,6 @@ public class StorageHubServiceUtil {
WSItem toReturn = new WSItem("recents", "Recent Documents", true);
_log.debug("getRecentItems ");
ArrayList children = new ArrayList<>();
- SecurityTokenProvider.instance.set(authUser.getSecurityToken());
WorkspaceManagerClient wsclient = AbstractPlugin.workspace().build();
List extends Item> theChildren = wsclient.getRecentModifiedFilePerVre();
@@ -136,10 +129,6 @@ public class StorageHubServiceUtil {
* @return the id of the VRE Folder associated to the given context
*/
public static String getWorkspaceFolderURL(HttpServletRequest request) {
- String userName = Utils.getCurrentUser(request).getUsername();
- String scope = Utils.getCurrentContext(request);
- String authorizationToken = Utils.getCurrentUserToken(scope, userName);
- SecurityTokenProvider.instance.set(authorizationToken);
String siteLandingPagePath = PortalContext.getConfiguration().getSiteLandingPagePath(request);
String toReturn = siteLandingPagePath;
@@ -161,11 +150,9 @@ public class StorageHubServiceUtil {
* @return the VRE Folders Id
*/
public static String getVREFoldersId(HttpServletRequest request) {
- String userName = Utils.getCurrentUser(request).getUsername();
- String scope = Utils.getCurrentContext(request);
- String authorizationToken = Utils.getCurrentUserToken(scope, userName);
- SecurityTokenProvider.instance.set(authorizationToken);
String toReturn = "";
+ String currentContext = PortalContext.getConfiguration().getCurrentScope(request);
+ ScopeProvider.instance.set(currentContext);
try {
WorkspaceManagerClient wsclient = AbstractPlugin.workspace().build();
try {
diff --git a/src/main/java/org/gcube/portlets/user/wswidget/WorkspaceWidget.java b/src/main/java/org/gcube/portlets/user/wswidget/WorkspaceWidget.java
index 98288bf..17fc2d5 100644
--- a/src/main/java/org/gcube/portlets/user/wswidget/WorkspaceWidget.java
+++ b/src/main/java/org/gcube/portlets/user/wswidget/WorkspaceWidget.java
@@ -12,7 +12,6 @@ import javax.portlet.ResourceResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
-import org.gcube.common.authorization.library.provider.SecurityTokenProvider;
import org.gcube.common.storagehub.client.StreamDescriptor;
import org.gcube.common.storagehub.client.dsl.FileContainer;
import org.gcube.common.storagehub.client.dsl.ItemContainer;
@@ -73,6 +72,7 @@ public class WorkspaceWidget extends MVCPortlet {
} else {
fileContainer = client.open(selectedItemId).asFile();
streamDescr = fileContainer.download(selectedItemId);
+ _log.info("*** DONE fileContainer.download for itemid=" +selectedItemId);
}
if (item instanceof ExternalURL) { //if is a type URL we open directly the link (HL Created it)
Scanner sc = new Scanner( streamDescr.getStream());
@@ -85,7 +85,8 @@ public class WorkspaceWidget extends MVCPortlet {
} catch (StorageHubException e) {
e.printStackTrace();
}
- if (! (item instanceof ExternalURL || item instanceof ExternalLink)) {
+ if (! (item instanceof ExternalURL || item instanceof ExternalLink)) {
+
HttpServletRequest httpReq = PortalUtil.getHttpServletRequest(resourceRequest);
ServletResponseUtil.sendFile(httpReq,httpRes, streamDescr.getFileName(), streamDescr.getStream(), "application/download");
streamDescr.getStream().close();
@@ -257,10 +258,6 @@ public class WorkspaceWidget extends MVCPortlet {
}
private static WSItem getRootItem(ResourceRequest request) {
- String userName = Utils.getCurrentUser(request).getUsername();
- String scope = Utils.getCurrentContext(request);
- String authorizationToken = Utils.getCurrentUserToken(scope, userName);
- SecurityTokenProvider.instance.set(authorizationToken);
WorkspaceManagerClient client = AbstractPlugin.workspace().build();
Item itemRoot = client.getWorkspace("hl:accounting");
WSItem root = new WSItem(itemRoot.getId(), Utils.HOME_LABEL, true);
@@ -276,9 +273,6 @@ public class WorkspaceWidget extends MVCPortlet {
*/
private AuthorizedUser setAuthorizationToken(ResourceRequest request) {
GCubeUser currentUser = Utils.getCurrentUser(request);
- String scope = Utils.getCurrentContext(request);
- String authorizationToken = Utils.getCurrentUserToken(scope, currentUser.getUsername());
- SecurityTokenProvider.instance.set(authorizationToken);
- return new AuthorizedUser(currentUser, authorizationToken, scope);
+ return new AuthorizedUser(currentUser);
}
}
diff --git a/src/main/java/org/gcube/portlets/user/wswidget/shared/AuthorizedUser.java b/src/main/java/org/gcube/portlets/user/wswidget/shared/AuthorizedUser.java
index ac60c3f..c0fb8cd 100644
--- a/src/main/java/org/gcube/portlets/user/wswidget/shared/AuthorizedUser.java
+++ b/src/main/java/org/gcube/portlets/user/wswidget/shared/AuthorizedUser.java
@@ -6,11 +6,10 @@ public class AuthorizedUser {
private GCubeUser user;
private String token;
private String context;
- public AuthorizedUser(GCubeUser user, String token, String context) {
+ public AuthorizedUser(GCubeUser user) {
super();
this.user = user;
- this.token = token;
- this.context = context;
+
}
public GCubeUser getUser() {
return user;
@@ -18,18 +17,7 @@ public class AuthorizedUser {
public void setUser(GCubeUser user) {
this.user = user;
}
- public String getSecurityToken() {
- return token;
- }
- public void setSecurityToken(String token) {
- this.token = token;
- }
- public String getContext() {
- return context;
- }
- public void setContext(String context) {
- this.context = context;
- }
+
@Override
public String toString() {
StringBuilder builder = new StringBuilder();