From cfa089131a8973db88ade54c62a9e8a3c87a59e5 Mon Sep 17 00:00:00 2001 From: Luca Frosini Date: Mon, 3 Oct 2022 16:42:54 +0200 Subject: [PATCH] Added possibility to read the user by gcube username --- .../java/org/gcube/gcat/persistence/ckan/CKANUser.java | 9 +++++++-- .../java/org/gcube/gcat/rest/administration/User.java | 4 +++- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/gcube/gcat/persistence/ckan/CKANUser.java b/src/main/java/org/gcube/gcat/persistence/ckan/CKANUser.java index c912b50..301362f 100644 --- a/src/main/java/org/gcube/gcat/persistence/ckan/CKANUser.java +++ b/src/main/java/org/gcube/gcat/persistence/ckan/CKANUser.java @@ -65,7 +65,12 @@ public class CKANUser extends CKAN { catalogueModerator = null; } - public String create() { + public void setName(String name) { + name = getCKANUsername(name); + this.name = name; + } + + public String createInCkan() { RandomString randomString = new RandomString(12); ObjectNode objectNode = mapper.createObjectNode(); objectNode.put(NAME, name); @@ -173,7 +178,7 @@ public class CKANUser extends CKAN { updateProfileIfNeeded(); } catch(WebApplicationException e) { if(e.getResponse().getStatusInfo() == Status.NOT_FOUND) { - create(); + createInCkan(); } else { throw e; } diff --git a/src/main/java/org/gcube/gcat/rest/administration/User.java b/src/main/java/org/gcube/gcat/rest/administration/User.java index 1358fcd..816460c 100644 --- a/src/main/java/org/gcube/gcat/rest/administration/User.java +++ b/src/main/java/org/gcube/gcat/rest/administration/User.java @@ -106,7 +106,9 @@ public class User extends REST implements org.gcube.gcat.api.interface * The service add the user's role in portal_role property when the user read its own profile. * See Roles section for more information. * - * @pathExample /users/luca_frosini + * @param username Ckan or gcube username are both accepted + * + * @pathExample /users/luca.frosini * @responseExample application/json;charset=UTF-8 classpath:/api-docs-examples/user/read-user-response.json */ @GET