From 1db23d384be6c186856af451fb84670149a0c98b Mon Sep 17 00:00:00 2001 From: Francesco Mangiacrapa Date: Mon, 11 Mar 2013 15:37:10 +0000 Subject: [PATCH] git-svn-id: http://svn.d4science-ii.research-infrastructures.eu/gcube/trunk/portlets/user/workspace-tree-widget@71171 82a268e6-3cf1-43bd-a215-b396298e98cf --- .../client/model/InfoContactModel.java | 22 +++----- .../workspace/server/GWTWorkspaceBuilder.java | 13 +++-- .../server/GWTWorkspaceServiceImpl.java | 6 +-- .../user/workspace/server/util/UserUtil.java | 52 +++++++++++++++++++ 4 files changed, 67 insertions(+), 26 deletions(-) create mode 100644 src/main/java/org/gcube/portlets/user/workspace/server/util/UserUtil.java diff --git a/src/main/java/org/gcube/portlets/user/workspace/client/model/InfoContactModel.java b/src/main/java/org/gcube/portlets/user/workspace/client/model/InfoContactModel.java index a8ba10f..f9f26a7 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/client/model/InfoContactModel.java +++ b/src/main/java/org/gcube/portlets/user/workspace/client/model/InfoContactModel.java @@ -14,6 +14,7 @@ import com.extjs.gxt.ui.client.data.BaseModelData; public class InfoContactModel extends BaseModelData implements Serializable { + protected static final String FULLNAME = "fullname"; /** * */ @@ -21,20 +22,19 @@ public class InfoContactModel extends BaseModelData implements Serializable { public InfoContactModel() {} - public InfoContactModel(String id, String login, String name) { + public InfoContactModel(String id, String login, String fullName) { setId(id); setLogin(login); - setName(name); - setCheck(false); + setName(fullName); } public void setName(String name) { - set("fullname",name); + set(FULLNAME,name); } public String getName(){ - return get("fullname"); + return get(FULLNAME); } public String getId() { @@ -52,14 +52,7 @@ public class InfoContactModel extends BaseModelData implements Serializable { public void setLogin(String login) { set(ConstantsExplorer.LOGIN, login); } - - public void setCheck(Boolean bool){ - set("check", bool); - } - - public Boolean isCheck(){ - return (Boolean) get("check"); - } + public static Comparator COMPARATOR = new Comparator() { // This is where the sorting happens. @@ -67,7 +60,6 @@ public class InfoContactModel extends BaseModelData implements Serializable { return o1.getLogin().compareToIgnoreCase(o2.getLogin()); } }; - @Override public String toString() { @@ -78,8 +70,6 @@ public class InfoContactModel extends BaseModelData implements Serializable { builder.append(getId()); builder.append(", getLogin()="); builder.append(getLogin()); - builder.append(", isCheck()="); - builder.append(isCheck()); builder.append("]"); return builder.toString(); } diff --git a/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceBuilder.java b/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceBuilder.java index af0f65a..09c732c 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceBuilder.java +++ b/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceBuilder.java @@ -78,6 +78,7 @@ import org.gcube.portlets.user.workspace.client.workspace.folder.item.gcube.GWTM import org.gcube.portlets.user.workspace.client.workspace.folder.item.gcube.GWTPDFDocument; import org.gcube.portlets.user.workspace.client.workspace.folder.item.gcube.GWTUrlDocument; import org.gcube.portlets.user.workspace.server.util.AllScope; +import org.gcube.portlets.user.workspace.server.util.UserUtil; /** * @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it @@ -837,13 +838,11 @@ public class GWTWorkspaceBuilder { } - //TODO - //TEMP?? - protected List buildGxtInfoContactFromPortalLogin(List listPortalLogin){ + protected List buildGxtInfoContactFromPortalLogin(List listUserLogin){ List listContact = new ArrayList(); - for (String portalLogin : listPortalLogin) - listContact.add(new InfoContactModel(portalLogin, portalLogin, "name")); + for (String portalLogin : listUserLogin) + listContact.add(new InfoContactModel(portalLogin, portalLogin, UserUtil.getUserFullName(portalLogin))); return listContact; } @@ -1422,7 +1421,7 @@ public class GWTWorkspaceBuilder { List listContactsModel = new ArrayList(); for(User user: listUsers){ - listContactsModel.add(new InfoContactModel(user.getId(), user.getPortalLogin(), user.getPortalLogin())); + listContactsModel.add(new InfoContactModel(user.getId(), user.getPortalLogin(), UserUtil.getUserFullName(user.getPortalLogin()))); } return listContactsModel; @@ -1501,7 +1500,7 @@ public class GWTWorkspaceBuilder { public InfoContactModel buildGXTInfoContactModel(User user) throws InternalErrorException{ if(user!=null) - return new InfoContactModel(user.getId(), user.getPortalLogin(), "name"); + return new InfoContactModel(user.getId(), user.getPortalLogin(), UserUtil.getUserFullName(user.getPortalLogin())); return new InfoContactModel(); } diff --git a/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceServiceImpl.java b/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceServiceImpl.java index 3896449..665ebb9 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceServiceImpl.java +++ b/src/main/java/org/gcube/portlets/user/workspace/server/GWTWorkspaceServiceImpl.java @@ -1584,11 +1584,11 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT GWTWorkspaceBuilder builder = getGWTWorkspaceBuilder(); - List listUser = wsFolder.getUsers(); + List listPortalLogin = wsFolder.getUsers(); - workspaceLogger.trace("getListUserSharedByFolderSharedId return "+ listUser.size() + " user"); + workspaceLogger.trace("getListUserSharedByFolderSharedId return "+ listPortalLogin.size() + " user"); - return builder.buildGxtInfoContactFromPortalLogin(listUser); + return builder.buildGxtInfoContactFromPortalLogin(listPortalLogin); } else{ diff --git a/src/main/java/org/gcube/portlets/user/workspace/server/util/UserUtil.java b/src/main/java/org/gcube/portlets/user/workspace/server/util/UserUtil.java new file mode 100644 index 0000000..2116f52 --- /dev/null +++ b/src/main/java/org/gcube/portlets/user/workspace/server/util/UserUtil.java @@ -0,0 +1,52 @@ +package org.gcube.portlets.user.workspace.server.util; + +import org.apache.log4j.Logger; +import org.gcube.vomanagement.usermanagement.UserManager; +import org.gcube.vomanagement.usermanagement.exception.UserManagementPortalException; +import org.gcube.vomanagement.usermanagement.exception.UserManagementSystemException; +import org.gcube.vomanagement.usermanagement.exception.UserRetrievalFault; +import org.gcube.vomanagement.usermanagement.impl.liferay.LiferayUserManager; +import org.gcube.vomanagement.usermanagement.model.UserModel; + + + +public class UserUtil { + + static UserManager um = new LiferayUserManager(); + protected static Logger logger = Logger.getLogger(UserUtil.class); + + + /** + * + * @param user + * @return + */ + public static String getUserFullName(String portalLogin){ +// return user.getPortalLogin(); //for testing in eclipse + + if (portalLogin.compareTo(Util.TEST_USER) != 0) { //skip test.user + + UserModel curr = null; + + try { + try { + curr = um.getUserByScreenName(portalLogin); + + } catch (UserManagementSystemException e) { + + logger.error("An error occurred in getUserFullName "+e,e); + } catch (UserRetrievalFault e) { + + logger.error("An error occurred in getUserFullName "+e,e); + } + } catch (UserManagementPortalException ume) { + + } + if (curr != null) + return curr.getFullname(); + } + + return ""; + + } +}