ref 17080: Workspace - list of users I shared folder with varies from a gateway to another

https://support.d4science.org/issues/17080

Fixed the retrieve operation of users information

git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/widgets/workspace-sharing-widget@181091 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
Giancarlo Panichi 2019-07-01 10:51:25 +00:00
parent ed4e91379a
commit 43dd4023f5
1 changed files with 22 additions and 25 deletions

View File

@ -159,7 +159,7 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
List<InfoContactModel> listContactsModel = builder.buildGXTListContactsModelFromUserModel(info);
//listContactsModel.addAll(builder.getGXTListContactsModelFromVOs(info));
// listContactsModel.addAll(builder.getGXTListContactsModelFromVOs(info));
logger.debug("Get all Gateway Users returning a list having size: " + listContactsModel.size());
return listContactsModel;
@ -226,14 +226,11 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
if (map != null && !map.isEmpty()) {
List<InfoContactModel> listShared = new ArrayList<>();
List<String> keys = new ArrayList<String>(map.keySet());
List<InfoContactModel> listContactsModel = getAllContacts();
for (String username : keys) {
for (InfoContactModel contact : listContactsModel) {
if (contact != null && contact.getLogin() != null
&& contact.getLogin().compareTo(username) == 0) {
if (username != null && !username.isEmpty()) {
InfoContactModel contact = new InfoContactModel(username, username,
UserUtil.getUserFullName(username), false);
listShared.add(contact);
break;
}
}
}
return listShared;
@ -713,7 +710,8 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
}
} else {
logger.error("The item requested is not a valid shared folder : [itemId=" + itemId + "]");
throw new Exception("The item requested is not a valid shared folder. Impossible set the administrators.");
throw new Exception(
"The item requested is not a valid shared folder. Impossible set the administrators.");
}
} catch (Exception e) {
@ -741,7 +739,7 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
// logger.info("Retrieving old administator/s are/is:" +
// oldAdmins.size());
logger.info("Setting administators: "+listContactLogins);
logger.info("Setting administators: " + listContactLogins);
sharedFolder.setAdmins(listContactLogins);
/*
@ -1164,7 +1162,6 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
}
}
private List<WorkspaceACL> retrieveUserACLsFromFolderContainer(FolderContainer folderContainer) throws Exception {
String currentUser = getMyLogin();
logger.debug("Current User: " + currentUser);
@ -1190,7 +1187,7 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
String principal = acl.getPricipal();
String rootVO = PortalContext.getConfiguration().getInfrastructureName();
if (principal.startsWith(rootVO)) {
String tempScope=principal.substring(rootVO.length());
String tempScope = principal.substring(rootVO.length());
int voIndex = tempScope.indexOf("-");
if (voIndex != -1) {
tempScope = tempScope.substring(voIndex + 1);
@ -1198,7 +1195,7 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
if (vreIndex != -1) {
tempScope = tempScope.substring(vreIndex + 1);
if (tempScope.compareTo(vreName) == 0) {
logger.debug("User is member of: "+principal);
logger.debug("User is member of: " + principal);
currentUserACL = acl;
break;
}
@ -1209,7 +1206,7 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
i++;
}
if (currentUserACL != null) {
logger.debug("Permission found: "+currentUserACL);
logger.debug("Permission found: " + currentUserACL);
GWTWorkspaceSharingBuilder builder = new GWTWorkspaceSharingBuilder();
wsAcls = builder.getWorkspaceACLForUser(currentUserACL);
} else {
@ -1242,7 +1239,7 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
List<GCubeGroup> listOfGroups = groupManager.listGroupsByUser(userId);
List<GCubeGroup> vres = new ArrayList<GCubeGroup>();
for (GCubeGroup g : listOfGroups) {
if (groupManager.isVRE(g.getGroupId())){
if (groupManager.isVRE(g.getGroupId())) {
vres.add(g);
}
}