From de923b5f6192b8c06824d2432704c7f070e6a42e Mon Sep 17 00:00:00 2001 From: Massimiliano Assante Date: Thu, 20 Oct 2022 14:38:36 +0200 Subject: [PATCH] Feature #23887 possibility to get-usernames-by-role in UserClient --- .classpath | 3 +- CHANGELOG.md | 2 +- src/.DS_Store | Bin 0 -> 6148 bytes .../PostClient.java | 46 +++++++++++------ .../TestClientServices.java | 48 +++++++++++------- 5 files changed, 64 insertions(+), 35 deletions(-) create mode 100644 src/.DS_Store diff --git a/.classpath b/.classpath index 72e59e3..439a925 100644 --- a/.classpath +++ b/.classpath @@ -18,8 +18,9 @@ - + + diff --git a/CHANGELOG.md b/CHANGELOG.md index 80c46b4..6c6ded1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ ## [v1.1.1-SNAPSHOT] - 2022-09-06 - - Minor fix on a megthod name + - Minor fix on a method name ## [v1.1.0] - 2022-04-06 diff --git a/src/.DS_Store b/src/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..9cf1656c85457f1a889cb806b98387ad7d32e535 GIT binary patch literal 6148 zcmeHK%}T>S5Z-O8Z7D(y3VK`cTClNb6)z#y7cim+m70*C!I&*gY7V84yS|Vw;`2DO zyAg}^Dq?3~_nY6{><8H&#u#^}q0N}Z7;8a88elxMZ z4*2a2ma&-SEc*KW!8nPtyw`i@wR&T1y$RB3-g*zR@Nz$&X0AWEM(aY#B&c*hxQwG> zWNn_xH232)ny7*}j3DLaDo#ULxN@3?nX2`4pbavzc4jmC;HWG12gmcSnAv^X?ux_y zU_NiRws!YU&PR{QQz~CHqZ|lVvSF}-S5Q6|^z2R2M5g!PtMaQnLSldzAO?tmm1V#j z39Zh`GC&I_28e;57{L8OKtps4mKxR80UchSG2TE#0Uh5Gh{B*_u+#_<5UxuBbtyMb z46e(;FHD|eu+*r_8CNsIIA-SR@xs;Y;1?>LaYrNd!~ij{$Ut427M}lS@XIWHP& literal 0 HcmV?d00001 diff --git a/src/main/java/org/gcube/social_networking/social_networking_client_library/PostClient.java b/src/main/java/org/gcube/social_networking/social_networking_client_library/PostClient.java index b40dd4f..c909791 100644 --- a/src/main/java/org/gcube/social_networking/social_networking_client_library/PostClient.java +++ b/src/main/java/org/gcube/social_networking/social_networking_client_library/PostClient.java @@ -9,6 +9,7 @@ import javax.ws.rs.core.GenericType; import org.apache.commons.lang.Validate; import org.gcube.portal.databook.shared.Feed; +import org.gcube.portal.databook.shared.Post; import org.gcube.social_networking.social_networking_client_library.utils.HttpClient; import org.gcube.social_networking.socialnetworking.model.beans.PostInputBean; import org.gcube.social_networking.socialnetworking.model.output.ResponseBean; @@ -33,14 +34,14 @@ public class PostClient extends BaseClient{ * Get posts since date * @return */ - public List getUserPostsSinceDate(long timeInMillis){ + public List getUserPostsSinceDate(long timeInMillis){ Validate.isTrue(timeInMillis >= 0, "time cannot be negative"); logger.debug("Request for getting posts"); String thisMethodSignature = "get-posts-user-since"; String request = getServiceEndpoint() + thisMethodSignature + "?time=" + timeInMillis; - return HttpClient.get(new GenericType>>(){}, request); + return HttpClient.get(new GenericType>>(){}, request); } @@ -48,12 +49,12 @@ public class PostClient extends BaseClient{ * Get all posts * @return */ - public List getAllUserPosts(){ + public List getAllUserPosts(){ logger.debug("Request for getting posts"); String thisMethodSignature = "get-posts-user"; String request = getServiceEndpoint() + thisMethodSignature; - return HttpClient.get(new GenericType>>(){}, request); + return HttpClient.get(new GenericType>>(){}, request); } @@ -61,14 +62,14 @@ public class PostClient extends BaseClient{ * Get posts quantity * @return */ - public List getUserPostsQuantity(int quantity){ + public List getUserPostsQuantity(int quantity){ Validate.isTrue(quantity >= 0, "quantity cannot be negative"); logger.debug("Request for getting posts"); String thisMethodSignature = "get-posts-user-quantity"; String request = getServiceEndpoint() + thisMethodSignature + "?quantity=" + quantity; - return HttpClient.get(new GenericType>>(){}, request); + return HttpClient.get(new GenericType>>(){}, request); } @@ -76,14 +77,14 @@ public class PostClient extends BaseClient{ * Write post * @return */ - public Feed writeUserPost(PostInputBean toWrite){ + public Post writeUserPost(PostInputBean toWrite){ Validate.isTrue(toWrite != null, "Post to write cannot be null"); logger.debug("Request for writing post"); String thisMethodSignature = "write-post-user"; String request = getServiceEndpoint() + thisMethodSignature; - return HttpClient.post(new GenericType>(){}, request, toWrite); + return HttpClient.post(new GenericType>(){}, request, toWrite); } @@ -91,12 +92,12 @@ public class PostClient extends BaseClient{ * Get posts application (token set must belong to the application) * @return */ - public List getAllApplicationPosts(){ + public List getAllApplicationPosts(){ logger.debug("Request for getting posts"); String thisMethodSignature = "get-posts-app"; String request = getServiceEndpoint() + thisMethodSignature; - return HttpClient.get(new GenericType>>(){}, request); + return HttpClient.get(new GenericType>>(){}, request); } @@ -104,18 +105,19 @@ public class PostClient extends BaseClient{ * Write post application (token set must belong to the application) * @return */ - public Feed writeApplicationPost(PostInputBean toWrite){ + public Post writeApplicationPost(PostInputBean toWrite){ Validate.isTrue(toWrite != null, "Post to write cannot be null"); logger.debug("Request for writing application post"); String thisMethodSignature = "write-post-app"; String request = getServiceEndpoint() + thisMethodSignature; - return HttpClient.post(new GenericType>(){}, request, toWrite); + return HttpClient.post(new GenericType>(){}, request, toWrite); } /** + * @deprecated use List getVREPosts() * Get posts vre * @return */ @@ -126,6 +128,18 @@ public class PostClient extends BaseClient{ String request = getServiceEndpoint() + thisMethodSignature; return HttpClient.get(new GenericType>>(){}, request); + } + /** + * Get posts vre + * @return + */ + public List getVREPosts(){ + + logger.debug("Request for getting posts vre"); + String thisMethodSignature = "get-posts-vre"; + String request = getServiceEndpoint() + thisMethodSignature; + return HttpClient.get(new GenericType>>(){}, request); + } /** @@ -133,14 +147,14 @@ public class PostClient extends BaseClient{ * @return * @throws UnsupportedEncodingException */ - public List getHashtagPosts(String hashtag) throws UnsupportedEncodingException{ + public List getHashtagPosts(String hashtag) throws UnsupportedEncodingException{ Validate.isTrue(hashtag != null, "hashtag cannot be null"); logger.debug("Request for getting posts with hashtag " + hashtag); String thisMethodSignature = "get-posts-by-hashtag"; String request = getServiceEndpoint() + thisMethodSignature + "?hashtag=" + URLEncoder.encode(hashtag, "UTF-8"); - return HttpClient.get(new GenericType>>(){}, request); + return HttpClient.get(new GenericType>>(){}, request); } @@ -148,12 +162,12 @@ public class PostClient extends BaseClient{ * Get liked posts * @return */ - public List getUserLikedPost(){ + public List getUserLikedPost(){ logger.debug("Request for getting posts liked"); String thisMethodSignature = "get-liked-posts"; String request = getServiceEndpoint() + thisMethodSignature; - return HttpClient.get(new GenericType>>(){}, request); + return HttpClient.get(new GenericType>>(){}, request); } diff --git a/src/test/java/org/gcube/portal/social_networking_client_library/TestClientServices.java b/src/test/java/org/gcube/portal/social_networking_client_library/TestClientServices.java index 85e6e94..b6d1c4a 100644 --- a/src/test/java/org/gcube/portal/social_networking_client_library/TestClientServices.java +++ b/src/test/java/org/gcube/portal/social_networking_client_library/TestClientServices.java @@ -14,6 +14,7 @@ import org.gcube.common.scope.api.ScopeProvider; import org.gcube.portal.databook.shared.EnhancedFeed; import org.gcube.portal.databook.shared.Feed; import org.gcube.portal.databook.shared.Notification; +import org.gcube.portal.databook.shared.Post; import org.gcube.social_networking.social_networking_client_library.FullTextSearchClient; import org.gcube.social_networking.social_networking_client_library.HashTagClient; import org.gcube.social_networking.social_networking_client_library.MessageClient; @@ -53,8 +54,10 @@ public class TestClientServices { @Before public void setContextAndToken(){ - ScopeProvider.instance.set("/d4science.research-infrastructures.eu/gCubeApps/gCube"); - String umaToken = "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJySUJPYjZZY3p2ZE4xNVpuNHFkUTRLdEQ5VUhyY1dwNWJCT3NaLXpYbXM0In0.eyJleHAiOjE2NjM2NjU2NTgsImlhdCI6MTY2MzY2NTM1OCwiYXV0aF90aW1lIjoxNjYzNjY0MTg1LCJqdGkiOiIxMjNhYmY0MS1lZmE1LTQ4ZjEtYmE2Zi03MjNkOWZjNDAwMWQiLCJpc3MiOiJodHRwczovL2FjY291bnRzLmQ0c2NpZW5jZS5vcmcvYXV0aC9yZWFsbXMvZDRzY2llbmNlIiwiYXVkIjoiJTJGZDRzY2llbmNlLnJlc2VhcmNoLWluZnJhc3RydWN0dXJlcy5ldSUyRmdDdWJlQXBwcyUyRmdDdWJlIiwic3ViIjoiMzM4OGQwZjgtM2E0OS00ZGEwLWE3OGUtN2I2MjI1OTI2M2U2IiwidHlwIjoiQmVhcmVyIiwiYXpwIjoidmxhYi5pc3RpLmNuci5pdCIsInNlc3Npb25fc3RhdGUiOiI3MjRkMmJmOS00NjQ2LTQwZjAtOTY1ZC02MzFlODJiZWZkMmEiLCJhY3IiOiIxIiwiYWxsb3dlZC1vcmlnaW5zIjpbIi8qIl0sInJlc291cmNlX2FjY2VzcyI6eyIlMkZkNHNjaWVuY2UucmVzZWFyY2gtaW5mcmFzdHJ1Y3R1cmVzLmV1JTJGZ0N1YmVBcHBzJTJGZ0N1YmUiOnsicm9sZXMiOlsiVlJFLU1hbmFnZXIiLCJNZW1iZXIiXX19LCJhdXRob3JpemF0aW9uIjp7InBlcm1pc3Npb25zIjpbeyJyc2lkIjoiYWNlM2ZmNWQtYjU2ZS00MDgzLTljMzAtMjY0NTJiODc3YWIzIiwicnNuYW1lIjoiRGVmYXVsdCBSZXNvdXJjZSJ9XX0sInNjb3BlIjoicHJvZmlsZSBlbWFpbCIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJuYW1lIjoiTWFzc2ltaWxpYW5vIEFzc2FudGUiLCJwcmVmZXJyZWRfdXNlcm5hbWUiOiJtYXNzaW1pbGlhbm8uYXNzYW50ZSIsImdpdmVuX25hbWUiOiJNYXNzaW1pbGlhbm8iLCJmYW1pbHlfbmFtZSI6IkFzc2FudGUiLCJlbWFpbCI6Im1hc3NpbWlsaWFuby5hc3NhbnRlQGlzdGkuY25yLml0In0.KIxC9QYGZCp6jAdye_82q648JjZli9KMxe-lqyFWkuA-HaZ-Ig2lWyn747iKp3UmstQgCTTonmOsVANHp1Feu_U1CuiWqRZ8OhmrTj8Q5v-FKwVtN2GfbjOF9b4aMXySFPd1HtCGHJ4o57uUrIQvvOV_SJOK5SOjG0YzOmsrOcXzSPl97ZZLKwio-Py0rxN6fdK8Obx7TL1eGgllhAI7ZDFRfoZrbz-F1YL1IPlQ6RI76rb7sbt6oL-T6LirP92AmUaW_nTLBBqrFR7uCaZdZKIDd4zxBmyzXjkNHncMKg8yFl-i1SRe58EcucMwEN0O-kUkhIb2CzaClsiWcLjP5g"; + //ScopeProvider.instance.set("/d4science.research-infrastructures.eu/gCubeApps/gCube"); + //String umaToken = "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJySUJPYjZZY3p2ZE4xNVpuNHFkUTRLdEQ5VUhyY1dwNWJCT3NaLXpYbXM0In0.eyJleHAiOjE2NjM2NjU2NTgsImlhdCI6MTY2MzY2NTM1OCwiYXV0aF90aW1lIjoxNjYzNjY0MTg1LCJqdGkiOiIxMjNhYmY0MS1lZmE1LTQ4ZjEtYmE2Zi03MjNkOWZjNDAwMWQiLCJpc3MiOiJodHRwczovL2FjY291bnRzLmQ0c2NpZW5jZS5vcmcvYXV0aC9yZWFsbXMvZDRzY2llbmNlIiwiYXVkIjoiJTJGZDRzY2llbmNlLnJlc2VhcmNoLWluZnJhc3RydWN0dXJlcy5ldSUyRmdDdWJlQXBwcyUyRmdDdWJlIiwic3ViIjoiMzM4OGQwZjgtM2E0OS00ZGEwLWE3OGUtN2I2MjI1OTI2M2U2IiwidHlwIjoiQmVhcmVyIiwiYXpwIjoidmxhYi5pc3RpLmNuci5pdCIsInNlc3Npb25fc3RhdGUiOiI3MjRkMmJmOS00NjQ2LTQwZjAtOTY1ZC02MzFlODJiZWZkMmEiLCJhY3IiOiIxIiwiYWxsb3dlZC1vcmlnaW5zIjpbIi8qIl0sInJlc291cmNlX2FjY2VzcyI6eyIlMkZkNHNjaWVuY2UucmVzZWFyY2gtaW5mcmFzdHJ1Y3R1cmVzLmV1JTJGZ0N1YmVBcHBzJTJGZ0N1YmUiOnsicm9sZXMiOlsiVlJFLU1hbmFnZXIiLCJNZW1iZXIiXX19LCJhdXRob3JpemF0aW9uIjp7InBlcm1pc3Npb25zIjpbeyJyc2lkIjoiYWNlM2ZmNWQtYjU2ZS00MDgzLTljMzAtMjY0NTJiODc3YWIzIiwicnNuYW1lIjoiRGVmYXVsdCBSZXNvdXJjZSJ9XX0sInNjb3BlIjoicHJvZmlsZSBlbWFpbCIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJuYW1lIjoiTWFzc2ltaWxpYW5vIEFzc2FudGUiLCJwcmVmZXJyZWRfdXNlcm5hbWUiOiJtYXNzaW1pbGlhbm8uYXNzYW50ZSIsImdpdmVuX25hbWUiOiJNYXNzaW1pbGlhbm8iLCJmYW1pbHlfbmFtZSI6IkFzc2FudGUiLCJlbWFpbCI6Im1hc3NpbWlsaWFuby5hc3NhbnRlQGlzdGkuY25yLml0In0.KIxC9QYGZCp6jAdye_82q648JjZli9KMxe-lqyFWkuA-HaZ-Ig2lWyn747iKp3UmstQgCTTonmOsVANHp1Feu_U1CuiWqRZ8OhmrTj8Q5v-FKwVtN2GfbjOF9b4aMXySFPd1HtCGHJ4o57uUrIQvvOV_SJOK5SOjG0YzOmsrOcXzSPl97ZZLKwio-Py0rxN6fdK8Obx7TL1eGgllhAI7ZDFRfoZrbz-F1YL1IPlQ6RI76rb7sbt6oL-T6LirP92AmUaW_nTLBBqrFR7uCaZdZKIDd4zxBmyzXjkNHncMKg8yFl-i1SRe58EcucMwEN0O-kUkhIb2CzaClsiWcLjP5g"; + ScopeProvider.instance.set("/gcube/devsec/devVRE"); + String umaToken = "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJSSklZNEpoNF9qdDdvNmREY0NlUDFfS1l0akcxVExXVW9oMkQ2Tzk1bFNBIn0.eyJleHAiOjE2NjM2ODc1MzQsImlhdCI6MTY2MzY4NzIzNCwiYXV0aF90aW1lIjoxNjYzNjg3MjI4LCJqdGkiOiI4Y2Q2NmZlNC1mNDBlLTRjZjQtOTBhNC0zZjMxYmYxNjdhYWQiLCJpc3MiOiJodHRwczovL2FjY291bnRzLmRldi5kNHNjaWVuY2Uub3JnL2F1dGgvcmVhbG1zL2Q0c2NpZW5jZSIsImF1ZCI6IiUyRmdjdWJlJTJGZGV2c2VjJTJGZGV2VlJFIiwic3ViIjoiNmE4MmY1ODctYzgwZS00OWUzLTg4YzYtYzExN2U5ZDhkM2Y3IiwidHlwIjoiQmVhcmVyIiwiYXpwIjoibmV4dC5kNHNjaWVuY2Uub3JnIiwic2Vzc2lvbl9zdGF0ZSI6IjhmOTQ3ZmE4LWY3NmUtNDMwYS1iMWQ3LWQwNzk5NjNlZjNlZiIsImFjciI6IjEiLCJhbGxvd2VkLW9yaWdpbnMiOlsiLyoiXSwicmVzb3VyY2VfYWNjZXNzIjp7ImNvbmR1Y3Rvci1zZXJ2ZXIiOnsicm9sZXMiOlsiY29uZHVjdG9yLW1hbmFnZXIiXX0sIiUyRmdjdWJlJTJGZGV2c2VjJTJGZGV2VlJFIjp7InJvbGVzIjpbIk1lbWJlciJdfX0sImF1dGhvcml6YXRpb24iOnsicGVybWlzc2lvbnMiOlt7InJzaWQiOiI1NzI4NTUxMC0zOTM5LTRkZTctOGZjMS1lM2E5ZDNjY2UyODEiLCJyc25hbWUiOiJEZWZhdWx0IFJlc291cmNlIn1dfSwic2NvcGUiOiJlbWFpbCBwcm9maWxlIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsIm5hbWUiOiJNYXNzaW1pbGlhbiBBc3NhbnRlIiwicHJlZmVycmVkX3VzZXJuYW1lIjoibWFzc2ltaWxpYW5vLmFzc2FudGUiLCJnaXZlbl9uYW1lIjoiTWFzc2ltaWxpYW4iLCJsb2NhbGUiOiJlbiIsImZhbWlseV9uYW1lIjoiQXNzYW50ZSIsImVtYWlsIjoibWFzc2ltaWxpYW5vLmFzc2FudGVAaXN0aS5jbnIuaXQifQ.IkYaHojPyKuM-xIQexIf8KDyR41-vnE8DVm7LzVfbRuPEmkprICxHIrrrnrCWTP1ZfgCfhgjlHTvzkGpGUCdM5NxtQbMcm4k4yqfbOAyJ-S0BQJGgpkA-jLYAfC-OrRPeyNul_nTpn-L0vro3-FWRfqgpS3fYGfPbxqQpGxlpqmxJ-V05vKhILkp6uXN0lcrKKuWjAO0VchgnLF0f_J6dlPdsueLKRGMIs_Xsq-RErrhe2vsbw7kt-2hZ29rNHDLcpnXtka-4LK_bVZbHhglIAn1TVPb8YPQmfooIu35fggDSY7qtXIrsJjbRlQzlVUCmjbNd-fykgoex0cojcsjaQ"; AccessTokenProvider.instance.set(umaToken); SecurityTokenProvider.instance.set(""); } @@ -255,31 +258,39 @@ public class TestClientServices { } - //@Test + @Test public void getUserPostsSinceDate() throws Exception{ PostClient postClient = new PostClient(); - List sinceLastYearPost = postClient.getUserPostsSinceDate(System.currentTimeMillis() - 1000 * 60 * 60 * 24 * 12); + List sinceLastYearPost = postClient.getUserPostsSinceDate(System.currentTimeMillis() - 1000 * 60 * 60 * 24 * 12); logger.debug("Posts are " + sinceLastYearPost); } - //@Test + @Test public void getAllUserPosts() throws Exception{ PostClient postClient = new PostClient(); - List allposts = postClient.getAllUserPosts(); - logger.debug("All posts are " + allposts); + List allposts = postClient.getAllUserPosts(); + logger.debug("All posts found:"); + for (Post post : allposts) { + logger.debug(post.toString()); + } + } - //@Test + @Test public void getUserPostsQuantity() throws Exception{ PostClient postClient = new PostClient(); - List quantityPosts = postClient.getUserPostsQuantity(3); - logger.debug("Some posts are " + quantityPosts); + List quantityPosts = postClient.getUserPostsQuantity(3); + logger.debug("Some posts are "); + logger.debug(quantityPosts + " posts found:"); + for (Post post : quantityPosts) { + logger.debug(post.toString()); + } } //@Test @@ -287,7 +298,7 @@ public class TestClientServices { PostClient postClient = new PostClient(); PostInputBean toWrite = new PostInputBean("Testing social networking rest client", null, null, null, null, null, false, null); - Feed written = postClient.writeUserPost(toWrite); + Post written = postClient.writeUserPost(toWrite); logger.debug("Written post is " + written); } @@ -303,7 +314,7 @@ public class TestClientServices { SecurityTokenProvider.instance.set(token); PostClient postClient = new PostClient(); - List applicationPosts = postClient.getAllApplicationPosts(); + List applicationPosts = postClient.getAllApplicationPosts(); logger.debug("Application posts are " + applicationPosts); SecurityTokenProvider.instance.set(currentToken); @@ -322,7 +333,7 @@ public class TestClientServices { PostClient postClient = new PostClient(); PostInputBean toWrite = new PostInputBean("Testing social networking rest client [via application token] #apptoken #rest #client #java", null, null, null, null, null, false, null); - Feed written = postClient.writeApplicationPost(toWrite); + Post written = postClient.writeApplicationPost(toWrite); logger.debug("Written post is " + written); SecurityTokenProvider.instance.set(currentToken); @@ -333,8 +344,11 @@ public class TestClientServices { public void getPostsVRE() throws Exception{ PostClient postClient = new PostClient(); - List vrePosts = postClient.getPostsVRE(); - logger.debug("VRE posts are " + vrePosts); + List vrePosts = postClient.getVREPosts(); + logger.debug("VRE posts : "); + for (Post post : vrePosts) { + logger.debug(post.toString()); + } } @@ -342,7 +356,7 @@ public class TestClientServices { public void getHashtagPosts() throws Exception{ PostClient postClient = new PostClient(); - List postsWithHashtag = postClient.getHashtagPosts("#connect"); + List postsWithHashtag = postClient.getHashtagPosts("#connect"); logger.debug("Posts with hashtag #connect are " + postsWithHashtag); } @@ -351,7 +365,7 @@ public class TestClientServices { public void getUserLikedPost() throws Exception{ PostClient postClient = new PostClient(); - List postsLiked = postClient.getUserLikedPost(); + List postsLiked = postClient.getUserLikedPost(); logger.debug("Posts liked are " + postsLiked); }