From 1ca35916cd7e12140068d3806cfffbc3db74ad91 Mon Sep 17 00:00:00 2001 From: "lucio.lelii" Date: Thu, 29 Apr 2021 16:53:35 +0200 Subject: [PATCH] porting to storagehub for messages --- pom.xml | 37 +++++-------------- .../networking/ws/methods/v1/Messages.java | 13 +++---- .../networking/ws/methods/v2/Messages.java | 36 ++++++++---------- 3 files changed, 31 insertions(+), 55 deletions(-) diff --git a/pom.xml b/pom.xml index 10f841d..405162d 100644 --- a/pom.xml +++ b/pom.xml @@ -12,13 +12,12 @@ org.gcube.portal social-networking-library-ws war - 2.3.3-SNAPSHOT + 2.4.0-SNAPSHOT social-networking-library-ws Rest interface for the social networking library. 1.8 1.5.13 - 2.25.1 ${project.basedir}/distro ${project.build.directory}/${project.build.finalName} distro @@ -31,9 +30,9 @@ scm:git:https://code-repo.d4science.org/gCubeSystem/social-networking-library-ws.git https://code-repo.d4science.org/gCubeSystem/social-networking-library-ws - + - + org.gcube.distribution gcube-smartgears-bom @@ -56,6 +55,11 @@ [2.4.1-SNAPSHOT,3.0.0-SNAPSHOT) compile + + org.gcube.common + storagehub-client-library + [1.0.0-SNAPSHOT,2.0.0-SNAPSHOT) + com.sun.mail javax.mail @@ -166,18 +170,7 @@ authorization-client provided - - org.gcube.common - home-library - [2.0.0-SNAPSHOT, 3.0.0-SNAPSHOT) - compile - - - org.gcube.common - home-library-jcr - [2.0.0-SNAPSHOT, 3.0.0-SNAPSHOT) - compile - + junit junit @@ -221,32 +214,22 @@ org.glassfish.jersey.containers jersey-container-servlet-core - ${version.jersey} - - - org.glassfish.jersey.media - jersey-media-json-jackson - ${version.jersey} org.glassfish.jersey.media jersey-media-json-processing - ${version.jersey} org.glassfish.jersey.media jersey-media-multipart - ${version.jersey} org.glassfish.jersey.media jersey-media-sse - ${version.jersey} org.glassfish.jersey.ext jersey-bean-validation - ${version.jersey} io.swagger @@ -305,7 +288,6 @@ org.apache.maven.plugins maven-war-plugin - 2.1.1 compile @@ -321,7 +303,6 @@ org.apache.maven.plugins maven-compiler-plugin - 2.3.2 1.8 1.8 diff --git a/src/main/java/org/gcube/portal/social/networking/ws/methods/v1/Messages.java b/src/main/java/org/gcube/portal/social/networking/ws/methods/v1/Messages.java index c1099d1..0f14682 100644 --- a/src/main/java/org/gcube/portal/social/networking/ws/methods/v1/Messages.java +++ b/src/main/java/org/gcube/portal/social/networking/ws/methods/v1/Messages.java @@ -17,9 +17,9 @@ import org.gcube.applicationsupportlayer.social.shared.SocialNetworkingSite; import org.gcube.applicationsupportlayer.social.shared.SocialNetworkingUser; import org.gcube.common.authorization.library.provider.AuthorizationProvider; import org.gcube.common.authorization.library.utils.Caller; -import org.gcube.common.homelibrary.home.HomeLibrary; -import org.gcube.common.homelibrary.home.workspace.Workspace; import org.gcube.common.scope.api.ScopeProvider; +import org.gcube.common.storagehub.client.plugins.AbstractPlugin; +import org.gcube.common.storagehub.client.proxies.MessageManagerClient; import org.gcube.portal.notifications.bean.GenericItemBean; import org.gcube.portal.notifications.thread.MessageNotificationsThread; import org.gcube.portal.social.networking.caches.SocialNetworkingSiteFinder; @@ -115,13 +115,12 @@ public class Messages { // sender info GCubeUser senderUser = uManager.getUserByUsername(senderId); - Workspace workspace = HomeLibrary.getUserWorkspace(senderId); - + + MessageManagerClient client = AbstractPlugin.messages().build(); + // send message logger.debug("Sending message to " + recipientsListFiltered); - String messageId = workspace.getWorkspaceMessageManager() - .sendMessageToPortalLogins(subject, body, - new ArrayList(), recipientsListFiltered); + String messageId = client.sendMessage(recipientsListFiltered, subject, body, null); // send notification logger.debug("Message sent to " + recipientsIds + ". Sending message notification to: " + recipientsIds); diff --git a/src/main/java/org/gcube/portal/social/networking/ws/methods/v2/Messages.java b/src/main/java/org/gcube/portal/social/networking/ws/methods/v2/Messages.java index 6883699..70fc6f4 100644 --- a/src/main/java/org/gcube/portal/social/networking/ws/methods/v2/Messages.java +++ b/src/main/java/org/gcube/portal/social/networking/ws/methods/v2/Messages.java @@ -1,12 +1,5 @@ package org.gcube.portal.social.networking.ws.methods.v2; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import io.swagger.annotations.ApiParam; -import io.swagger.annotations.ApiResponse; -import io.swagger.annotations.ApiResponses; -import io.swagger.annotations.Authorization; - import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -32,10 +25,10 @@ import org.gcube.applicationsupportlayer.social.shared.SocialNetworkingUser; import org.gcube.common.authorization.library.provider.AuthorizationProvider; import org.gcube.common.authorization.library.provider.SecurityTokenProvider; import org.gcube.common.authorization.library.utils.Caller; -import org.gcube.common.homelibrary.home.HomeLibrary; -import org.gcube.common.homelibrary.home.workspace.Workspace; -import org.gcube.common.homelibrary.home.workspace.sharing.WorkspaceMessage; import org.gcube.common.scope.api.ScopeProvider; +import org.gcube.common.storagehub.client.plugins.AbstractPlugin; +import org.gcube.common.storagehub.client.proxies.MessageManagerClient; +import org.gcube.common.storagehub.model.messages.Message; import org.gcube.portal.notifications.bean.GenericItemBean; import org.gcube.portal.notifications.thread.MessageNotificationsThread; import org.gcube.portal.social.networking.caches.SocialNetworkingSiteFinder; @@ -53,6 +46,13 @@ import org.gcube.vomanagement.usermanagement.exception.UserRetrievalFault; import org.gcube.vomanagement.usermanagement.model.GCubeUser; import org.slf4j.LoggerFactory; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import io.swagger.annotations.ApiResponse; +import io.swagger.annotations.ApiResponses; +import io.swagger.annotations.Authorization; + /** * Messages services REST interface * @author Costantino Perciante at ISTI-CNR @@ -136,15 +136,11 @@ public class Messages { // sender info GCubeUser senderUser = UserManagerWSBuilder.getInstance().getUserManager().getUserByUsername(senderId); - Workspace workspace = HomeLibrary.getUserWorkspace(senderId); - - logger.debug("Workspace is " + workspace.getRoot()); + MessageManagerClient client = AbstractPlugin.messages().build(); // send message logger.debug("Sending message to " + recipientsListFiltered); - String messageId = workspace.getWorkspaceMessageManager() - .sendMessageToPortalLogins(subject, body, - new ArrayList(), recipientsListFiltered); + String messageId = client.sendMessage(recipientsListFiltered, subject, body, null); // send notification logger.debug("Message sent to " + recipientsIds + ". Sending message notification to: " + recipientsIds); @@ -184,8 +180,8 @@ public class Messages { logger.info("Request for retrieving sent messages by " + username); try{ - Workspace workspace = HomeLibrary.getUserWorkspace(username); - List sentMessages = workspace.getWorkspaceMessageManager().getSentMessages(); + MessageManagerClient client = AbstractPlugin.messages().build(); + List sentMessages = client.getSentMessages(); Collections.reverse(sentMessages); responseBean.setSuccess(true); logger.debug("Result is " + sentMessages); @@ -216,8 +212,8 @@ public class Messages { logger.info("Request for retrieving received messages by " + username); try{ - Workspace workspace = HomeLibrary.getUserWorkspace(username); - List getMessages = workspace.getWorkspaceMessageManager().getReceivedMessages(); + MessageManagerClient client = AbstractPlugin.messages().build(); + List getMessages =client.getReceivedMessages(); Collections.reverse(getMessages); responseBean.setSuccess(true); responseBean.setResult(getMessages);