From d6970cc49a0fede187f31fab7c3e0128ff5cb090 Mon Sep 17 00:00:00 2001 From: George Kalampokis Date: Wed, 2 Dec 2020 14:19:43 +0200 Subject: [PATCH] Add avatarUrl on UserListingModel --- .../java/eu/eudat/data/entities/UserInfo.java | 2 +- .../data/userinfo/UserListingModel.java | 21 +++++++++++++++++-- 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/dmp-backend/data/src/main/java/eu/eudat/data/entities/UserInfo.java b/dmp-backend/data/src/main/java/eu/eudat/data/entities/UserInfo.java index c2030985f..ca8b5ab51 100644 --- a/dmp-backend/data/src/main/java/eu/eudat/data/entities/UserInfo.java +++ b/dmp-backend/data/src/main/java/eu/eudat/data/entities/UserInfo.java @@ -15,7 +15,7 @@ import java.util.*; @NamedEntityGraphs({ @NamedEntityGraph( name = "userInfo", - attributeNodes = {@NamedAttributeNode("userRoles"), @NamedAttributeNode("credentials")}), + attributeNodes = {@NamedAttributeNode("userRoles"), @NamedAttributeNode("credentials"), @NamedAttributeNode("additionalinfo")}), }) public class UserInfo implements DataEntity { diff --git a/dmp-backend/web/src/main/java/eu/eudat/models/data/userinfo/UserListingModel.java b/dmp-backend/web/src/main/java/eu/eudat/models/data/userinfo/UserListingModel.java index 40bbd24f1..b40fc9691 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/models/data/userinfo/UserListingModel.java +++ b/dmp-backend/web/src/main/java/eu/eudat/models/data/userinfo/UserListingModel.java @@ -1,14 +1,18 @@ package eu.eudat.models.data.userinfo; +import com.fasterxml.jackson.databind.ObjectMapper; import eu.eudat.data.entities.UserInfo; -import eu.eudat.data.entities.UserRole; import eu.eudat.models.DataModel; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import java.io.IOException; import java.util.*; import java.util.stream.Collectors; public class UserListingModel implements DataModel { + private static final Logger logger = LoggerFactory.getLogger(UserListingModel.class); private UUID id; private String email; @@ -19,6 +23,7 @@ public class UserListingModel implements DataModel appRoles; + private String avatarUrl; public UUID getId() { return id; @@ -83,7 +88,13 @@ public class UserListingModel implements DataModel item.getRole()).collect(Collectors.toList()); + try { + Map additionalInfo = new ObjectMapper().readValue(entity.getAdditionalinfo(), HashMap.class); + this.avatarUrl = (String) additionalInfo.get("avatarUrl"); + } catch (IOException e) { + logger.error(e.getMessage(), e); + } return this; }