git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/widgets/workspace-sharing-widget@92548 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
3994b31dd9
commit
fb95e135e1
|
@ -34,13 +34,13 @@ public class WorkspaceSharingController {
|
||||||
private Window win = null;
|
private Window win = null;
|
||||||
|
|
||||||
|
|
||||||
/**
|
// /**
|
||||||
* This dialog doesn't show setting permissions, it use default server permissions
|
// * This dialog doesn't show setting permissions, it use default server permissions
|
||||||
* @param workspace itemId to share
|
// * @param workspace itemId to share
|
||||||
*/
|
// */
|
||||||
public WorkspaceSharingController(String itemId) {
|
// public WorkspaceSharingController(String itemId) {
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This dialog show setting permissions
|
* This dialog show setting permissions
|
||||||
|
|
|
@ -7,7 +7,6 @@ import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import org.apache.log4j.Logger;
|
|
||||||
import org.gcube.common.homelibrary.home.User;
|
import org.gcube.common.homelibrary.home.User;
|
||||||
import org.gcube.common.homelibrary.home.exceptions.InternalErrorException;
|
import org.gcube.common.homelibrary.home.exceptions.InternalErrorException;
|
||||||
import org.gcube.common.homelibrary.home.workspace.WorkspaceItem;
|
import org.gcube.common.homelibrary.home.workspace.WorkspaceItem;
|
||||||
|
@ -29,6 +28,8 @@ import org.gcube.portlets.widgets.workspacesharingwidget.shared.InfoContactModel
|
||||||
import org.gcube.portlets.widgets.workspacesharingwidget.shared.WorkspaceACL;
|
import org.gcube.portlets.widgets.workspacesharingwidget.shared.WorkspaceACL;
|
||||||
import org.gcube.portlets.widgets.workspacesharingwidget.shared.WorkspaceACL.USER_TYPE;
|
import org.gcube.portlets.widgets.workspacesharingwidget.shared.WorkspaceACL.USER_TYPE;
|
||||||
import org.gcube.vomanagement.usermanagement.model.UserModel;
|
import org.gcube.vomanagement.usermanagement.model.UserModel;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
|
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
|
||||||
|
@ -37,36 +38,45 @@ import org.gcube.vomanagement.usermanagement.model.UserModel;
|
||||||
*/
|
*/
|
||||||
public class GWTWorkspaceSharingBuilder {
|
public class GWTWorkspaceSharingBuilder {
|
||||||
|
|
||||||
|
protected Logger logger = LoggerFactory.getLogger(GWTWorkspaceSharingBuilder.class);
|
||||||
protected static Logger logger = Logger.getLogger(GWTWorkspaceSharingBuilder.class);
|
|
||||||
|
|
||||||
private InfoContactModel userLogged;
|
private InfoContactModel userLogged;
|
||||||
|
|
||||||
protected static HashMap<String, InfoContactModel> hashTestUser = null;
|
protected static HashMap<String, InfoContactModel> hashTestUser = null;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Used in test mode
|
* Used in test mode
|
||||||
|
*
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public static HashMap<String, InfoContactModel> getHashTestUsers() {
|
public static HashMap<String, InfoContactModel> getHashTestUsers() {
|
||||||
|
|
||||||
if (hashTestUser == null) {
|
if (hashTestUser == null) {
|
||||||
hashTestUser = new HashMap<String, InfoContactModel>();
|
hashTestUser = new HashMap<String, InfoContactModel>();
|
||||||
hashTestUser.put("federico.defaveri", new InfoContactModel("federico.defaveri", "federico.defaveri", "Federico de Faveri"));
|
hashTestUser.put("federico.defaveri", new InfoContactModel(
|
||||||
hashTestUser.put("antonio.gioia", new InfoContactModel("antonio.gioia", "antonio.gioia", "Antonio Gioia"));
|
"federico.defaveri", "federico.defaveri",
|
||||||
hashTestUser.put("fabio.sinibaldi", new InfoContactModel("fabio.sinibaldi", "fabio.sinibaldi", "Fabio Sinibaldi"));
|
"Federico de Faveri"));
|
||||||
hashTestUser.put("pasquale.pagano", new InfoContactModel("pasquale.pagano", "pasquale.pagano", "Pasquale Pagano"));
|
hashTestUser.put("antonio.gioia", new InfoContactModel(
|
||||||
hashTestUser.put(WsUtil.TEST_USER.toString(), new InfoContactModel(WsUtil.TEST_USER, WsUtil.TEST_USER, WsUtil.TEST_USER_FULL_NAME));
|
"antonio.gioia", "antonio.gioia", "Antonio Gioia"));
|
||||||
hashTestUser.put("francesco.mangiacrapa", new InfoContactModel("francesco.mangiacrapa", "francesco.mangiacrapa", "Francesco Mangiacrapa"));
|
hashTestUser.put("fabio.sinibaldi", new InfoContactModel(
|
||||||
hashTestUser.put("massimiliano.assante", new InfoContactModel("massimiliano.assante", "massimiliano.assante", "Massimiliano Assante"));
|
"fabio.sinibaldi", "fabio.sinibaldi", "Fabio Sinibaldi"));
|
||||||
|
hashTestUser.put("pasquale.pagano", new InfoContactModel(
|
||||||
|
"pasquale.pagano", "pasquale.pagano", "Pasquale Pagano"));
|
||||||
|
hashTestUser.put(WsUtil.TEST_USER.toString(), new InfoContactModel(
|
||||||
|
WsUtil.TEST_USER, WsUtil.TEST_USER,
|
||||||
|
WsUtil.TEST_USER_FULL_NAME));
|
||||||
|
hashTestUser.put("francesco.mangiacrapa", new InfoContactModel(
|
||||||
|
"francesco.mangiacrapa", "francesco.mangiacrapa",
|
||||||
|
"Francesco Mangiacrapa"));
|
||||||
|
hashTestUser.put("massimiliano.assante", new InfoContactModel(
|
||||||
|
"massimiliano.assante", "massimiliano.assante",
|
||||||
|
"Massimiliano Assante"));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return hashTestUser;
|
return hashTestUser;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param infoContactModel
|
* @param infoContactModel
|
||||||
*/
|
*/
|
||||||
|
@ -80,25 +90,32 @@ public class GWTWorkspaceSharingBuilder {
|
||||||
* @return
|
* @return
|
||||||
* @throws InternalErrorException
|
* @throws InternalErrorException
|
||||||
*/
|
*/
|
||||||
public List<InfoContactModel> buildGXTListContactsModel(List<UserModel> listUsers) throws InternalErrorException {
|
public List<InfoContactModel> buildGXTListContactsModel(
|
||||||
|
List<UserModel> listUsers) throws InternalErrorException {
|
||||||
|
|
||||||
List<InfoContactModel> listContactsModel = new ArrayList<InfoContactModel>();
|
List<InfoContactModel> listContactsModel = new ArrayList<InfoContactModel>();
|
||||||
|
|
||||||
if (listUsers == null)
|
if (listUsers == null)
|
||||||
return listContactsModel;
|
return listContactsModel;
|
||||||
|
|
||||||
logger.trace("List<UserModel> size returned from Portal VO is: "+ listUsers.size());
|
logger.info("List<UserModel> size returned from Portal VO is: "
|
||||||
|
+ listUsers.size());
|
||||||
|
|
||||||
logger.trace("Building list contact model list user model");
|
logger.info("Building list contact model list user model");
|
||||||
for (UserModel userModel : listUsers) {
|
for (UserModel userModel : listUsers) {
|
||||||
String fullName = userModel.getFullname();
|
String fullName = userModel.getFullname();
|
||||||
|
|
||||||
if (fullName != null && !fullName.isEmpty())
|
if (fullName != null && !fullName.isEmpty())
|
||||||
listContactsModel.add(new InfoContactModel(userModel.getUserId()+"", userModel.getScreenName(), fullName));
|
listContactsModel
|
||||||
|
.add(new InfoContactModel(userModel.getUserId() + "",
|
||||||
|
userModel.getScreenName(), fullName));
|
||||||
else
|
else
|
||||||
logger.trace("buildGXTListContactsModel doesn't return user: "+userModel.getScreenName()+ "because name is null or empty");
|
logger.info("buildGXTListContactsModel doesn't return user: "
|
||||||
|
+ userModel.getScreenName()
|
||||||
|
+ "because name is null or empty");
|
||||||
}
|
}
|
||||||
logger.trace("List contact model completed, return " +listContactsModel.size()+" contacts");
|
logger.info("List contact model completed, return "
|
||||||
|
+ listContactsModel.size() + " contacts");
|
||||||
|
|
||||||
return listContactsModel;
|
return listContactsModel;
|
||||||
}
|
}
|
||||||
|
@ -108,7 +125,8 @@ public class GWTWorkspaceSharingBuilder {
|
||||||
* @param listPortalLogin
|
* @param listPortalLogin
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public List<InfoContactModel> buildGxtInfoContactsFromPortalLogins(List<String> listPortalLogin){
|
public List<InfoContactModel> buildGxtInfoContactsFromPortalLogins(
|
||||||
|
List<String> listPortalLogin) {
|
||||||
|
|
||||||
List<InfoContactModel> listContact = new ArrayList<InfoContactModel>();
|
List<InfoContactModel> listContact = new ArrayList<InfoContactModel>();
|
||||||
for (String portalLogin : listPortalLogin)
|
for (String portalLogin : listPortalLogin)
|
||||||
|
@ -122,23 +140,27 @@ public class GWTWorkspaceSharingBuilder {
|
||||||
* @param portalLogin
|
* @param portalLogin
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
protected InfoContactModel buildGxtInfoContactFromPortalLogin(String portalLogin){
|
protected InfoContactModel buildGxtInfoContactFromPortalLogin(
|
||||||
|
String portalLogin) {
|
||||||
|
|
||||||
if (portalLogin == null) {
|
if (portalLogin == null) {
|
||||||
logger.warn("portal login is null, return empty");
|
logger.warn("portal login is null, return empty");
|
||||||
portalLogin = "";
|
portalLogin = "";
|
||||||
}
|
}
|
||||||
|
|
||||||
return new InfoContactModel(portalLogin, portalLogin, UserUtil.getUserFullName(portalLogin));
|
return new InfoContactModel(portalLogin, portalLogin,
|
||||||
|
UserUtil.getUserFullName(portalLogin));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Used in test mode
|
* Used in test mode
|
||||||
|
*
|
||||||
* @param listPortalLogin
|
* @param listPortalLogin
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
protected List<InfoContactModel> buildGxtInfoContactFromPortalLoginTestMode(List<String> listPortalLogin){
|
protected List<InfoContactModel> buildGxtInfoContactFromPortalLoginTestMode(
|
||||||
|
List<String> listPortalLogin) {
|
||||||
|
|
||||||
List<InfoContactModel> listContact = new ArrayList<InfoContactModel>();
|
List<InfoContactModel> listContact = new ArrayList<InfoContactModel>();
|
||||||
|
|
||||||
|
@ -148,22 +170,24 @@ public class GWTWorkspaceSharingBuilder {
|
||||||
return listContact;
|
return listContact;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @param user
|
* @param user
|
||||||
* @return
|
* @return
|
||||||
* @throws InternalErrorException
|
* @throws InternalErrorException
|
||||||
*/
|
*/
|
||||||
public InfoContactModel buildGXTInfoContactModel(User user) throws InternalErrorException{
|
public InfoContactModel buildGXTInfoContactModel(User user)
|
||||||
|
throws InternalErrorException {
|
||||||
|
|
||||||
if (user != null)
|
if (user != null)
|
||||||
return new InfoContactModel(user.getId(), user.getPortalLogin(), UserUtil.getUserFullName(user.getPortalLogin()));
|
return new InfoContactModel(user.getId(), user.getPortalLogin(),
|
||||||
|
UserUtil.getUserFullName(user.getPortalLogin()));
|
||||||
|
|
||||||
return new InfoContactModel();
|
return new InfoContactModel();
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<WorkspaceACL> getWorkspaceACLFromACLs(List<ACLType> types) throws Exception{
|
public List<WorkspaceACL> getWorkspaceACLFromACLs(List<ACLType> types)
|
||||||
|
throws Exception {
|
||||||
|
|
||||||
List<WorkspaceACL> acls = new ArrayList<WorkspaceACL>();
|
List<WorkspaceACL> acls = new ArrayList<WorkspaceACL>();
|
||||||
|
|
||||||
|
@ -172,21 +196,30 @@ public class GWTWorkspaceSharingBuilder {
|
||||||
switch (acl) {
|
switch (acl) {
|
||||||
|
|
||||||
case ADMINISTRATOR:
|
case ADMINISTRATOR:
|
||||||
// acls.add(new WorkspaceACL(acl.toString(), ACL_TYPE.ADMINISTRATOR, "Admin", false, USER_TYPE.ADMINISTRATOR, ""));
|
// acls.add(new WorkspaceACL(acl.toString(),
|
||||||
|
// ACL_TYPE.ADMINISTRATOR, "Admin", false,
|
||||||
|
// USER_TYPE.ADMINISTRATOR, ""));
|
||||||
break;
|
break;
|
||||||
case READ_ONLY:
|
case READ_ONLY:
|
||||||
acls.add(new WorkspaceACL(acl.toString(), ACL_TYPE.READ_ONLY, "Read Only", false, USER_TYPE.OTHER, "Users can read any file but cannot update/delete"));
|
acls.add(new WorkspaceACL(acl.toString(), ACL_TYPE.READ_ONLY,
|
||||||
|
"Read Only", false, USER_TYPE.OTHER,
|
||||||
|
"Users can read any file but cannot update/delete"));
|
||||||
break;
|
break;
|
||||||
case WRITE_OWNER:
|
case WRITE_OWNER:
|
||||||
acls.add(new WorkspaceACL(acl.toString(), ACL_TYPE.WRITE_OWNER, "Write Own", true, USER_TYPE.OTHER, "Users can update/delete only their files"));
|
acls.add(new WorkspaceACL(acl.toString(), ACL_TYPE.WRITE_OWNER,
|
||||||
|
"Write Own", true, USER_TYPE.OTHER,
|
||||||
|
"Users can update/delete only their files"));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WRITE_ALL:
|
case WRITE_ALL:
|
||||||
acls.add(new WorkspaceACL(acl.toString(), ACL_TYPE.WRITE_ANY, "Write Any", false, USER_TYPE.OTHER,"Any user can update/delete any file"));
|
acls.add(new WorkspaceACL(acl.toString(), ACL_TYPE.WRITE_ANY,
|
||||||
|
"Write Any", false, USER_TYPE.OTHER,
|
||||||
|
"Any user can update/delete any file"));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
acls.add(new WorkspaceACL(acl.toString(), ACL_TYPE.WRITE_OWNER, acl.toString(), false, USER_TYPE.OTHER, ""));
|
acls.add(new WorkspaceACL(acl.toString(), ACL_TYPE.WRITE_OWNER,
|
||||||
|
acl.toString(), false, USER_TYPE.OTHER, ""));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -197,31 +230,35 @@ public class GWTWorkspaceSharingBuilder {
|
||||||
return acls;
|
return acls;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected FileModel buildGXTFileModelItem(WorkspaceItem item, FileModel parentFolderModel) throws InternalErrorException
|
protected FileModel buildGXTFileModelItem(WorkspaceItem item, FileModel parentFolderModel) throws Exception {
|
||||||
{
|
|
||||||
|
|
||||||
FileModel fileModel = null;
|
FileModel fileModel = null;
|
||||||
|
|
||||||
|
FileModel parent = parentFolderModel != null ? (FileModel) parentFolderModel: null;
|
||||||
|
|
||||||
|
logger.info("Workspace item converting...");
|
||||||
|
|
||||||
|
try{
|
||||||
switch (item.getType()) {
|
switch (item.getType()) {
|
||||||
|
|
||||||
case FOLDER:
|
case FOLDER:
|
||||||
|
logger.info("Workspace item is folder...");
|
||||||
fileModel = new FolderModel(item.getId(), item.getName(), (FolderModel) parentFolderModel, true, false, false);
|
fileModel = new FolderModel(item.getId(), item.getName(), parent, true, false, false);
|
||||||
fileModel.setType(GXTFolderItemTypeEnum.FOLDER.toString());
|
fileModel.setType(GXTFolderItemTypeEnum.FOLDER.toString());
|
||||||
fileModel.setDescription(item.getDescription());
|
fileModel.setDescription(item.getDescription());
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case FOLDER_ITEM:
|
case FOLDER_ITEM:
|
||||||
|
logger.info("Workspace item is folder item...");
|
||||||
fileModel = new FileModel(item.getId(), item.getName(), (FolderModel) parentFolderModel, false, false);
|
fileModel = new FileModel(item.getId(), item.getName(), parent, false, false);
|
||||||
FolderItem folderItem = (FolderItem) item;
|
FolderItem folderItem = (FolderItem) item;
|
||||||
fileModel = setFolderItemType(fileModel, folderItem);
|
fileModel = setFolderItemType(fileModel, folderItem);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case SHARED_FOLDER:
|
case SHARED_FOLDER:
|
||||||
|
logger.info("Workspace item is shared item...");
|
||||||
WorkspaceSharedFolder shared = (WorkspaceSharedFolder) item;
|
WorkspaceSharedFolder shared = (WorkspaceSharedFolder) item;
|
||||||
String name = shared.isVreFolder() ? shared.getDisplayName() : item.getName();
|
String name = shared.isVreFolder() ? shared.getDisplayName() : item.getName();
|
||||||
fileModel = new FolderModel(item.getId(), name, (FolderModel) parentFolderModel, true, true, shared.isVreFolder());
|
fileModel = new FolderModel(item.getId(), name, parent, true, true, shared.isVreFolder());
|
||||||
fileModel.setType(GXTFolderItemTypeEnum.SHARED_FOLDER.toString());
|
fileModel.setType(GXTFolderItemTypeEnum.SHARED_FOLDER.toString());
|
||||||
fileModel.setDescription(item.getDescription());
|
fileModel.setDescription(item.getDescription());
|
||||||
break;
|
break;
|
||||||
|
@ -231,17 +268,19 @@ public class GWTWorkspaceSharingBuilder {
|
||||||
break;
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}catch (Exception e) {
|
||||||
|
logger.error("gxt conversion error: ",e);
|
||||||
|
throw new Exception("Error on conversion: ",e);
|
||||||
|
}
|
||||||
|
|
||||||
return fileModel;
|
return fileModel;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected FileModel setFolderItemType(FileModel fileModel,
|
||||||
|
FolderItem worspaceFolderItem) {
|
||||||
|
|
||||||
protected FileModel setFolderItemType(FileModel fileModel, FolderItem worspaceFolderItem){
|
switch (worspaceFolderItem.getFolderItemType()) {
|
||||||
|
|
||||||
switch(worspaceFolderItem.getFolderItemType())
|
|
||||||
{
|
|
||||||
case EXTERNAL_IMAGE:
|
case EXTERNAL_IMAGE:
|
||||||
fileModel.setFolderItemType(GXTFolderItemTypeEnum.EXTERNAL_IMAGE);
|
fileModel.setFolderItemType(GXTFolderItemTypeEnum.EXTERNAL_IMAGE);
|
||||||
ExternalImage extImage = (ExternalImage) worspaceFolderItem;
|
ExternalImage extImage = (ExternalImage) worspaceFolderItem;
|
||||||
|
@ -254,7 +293,8 @@ protected FileModel setFolderItemType(FileModel fileModel, FolderItem worspaceFo
|
||||||
fileModel.setType(extFile.getMimeType());
|
fileModel.setType(extFile.getMimeType());
|
||||||
break;
|
break;
|
||||||
case EXTERNAL_PDF_FILE:
|
case EXTERNAL_PDF_FILE:
|
||||||
fileModel.setFolderItemType(GXTFolderItemTypeEnum.EXTERNAL_PDF_FILE);
|
fileModel
|
||||||
|
.setFolderItemType(GXTFolderItemTypeEnum.EXTERNAL_PDF_FILE);
|
||||||
ExternalPDFFile pdfExt = (ExternalPDFFile) worspaceFolderItem;
|
ExternalPDFFile pdfExt = (ExternalPDFFile) worspaceFolderItem;
|
||||||
fileModel.setType(pdfExt.getMimeType());
|
fileModel.setType(pdfExt.getMimeType());
|
||||||
break;
|
break;
|
||||||
|
@ -296,17 +336,21 @@ protected FileModel setFolderItemType(FileModel fileModel, FolderItem worspaceFo
|
||||||
fileModel.setFolderItemType(GXTFolderItemTypeEnum.WORKFLOW_REPORT);
|
fileModel.setFolderItemType(GXTFolderItemTypeEnum.WORKFLOW_REPORT);
|
||||||
break;
|
break;
|
||||||
case WORKFLOW_TEMPLATE:
|
case WORKFLOW_TEMPLATE:
|
||||||
fileModel.setFolderItemType(GXTFolderItemTypeEnum.WORKFLOW_TEMPLATE);
|
fileModel
|
||||||
// logger.trace("**************************************DOCUMENTS******* filemodel "+ fileModel.getName());
|
.setFolderItemType(GXTFolderItemTypeEnum.WORKFLOW_TEMPLATE);
|
||||||
|
// logger.info("**************************************DOCUMENTS******* filemodel "+
|
||||||
|
// fileModel.getName());
|
||||||
break;
|
break;
|
||||||
case EXTERNAL_RESOURCE_LINK:
|
case EXTERNAL_RESOURCE_LINK:
|
||||||
fileModel.setFolderItemType(GXTFolderItemTypeEnum.EXTERNAL_RESOURCE_LINK);
|
fileModel
|
||||||
|
.setFolderItemType(GXTFolderItemTypeEnum.EXTERNAL_RESOURCE_LINK);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
fileModel.setFolderItemType(GXTFolderItemTypeEnum.UNKNOWN_TYPE);
|
fileModel.setFolderItemType(GXTFolderItemTypeEnum.UNKNOWN_TYPE);
|
||||||
fileModel.setType(GXTFolderItemTypeEnum.UNKNOWN_TYPE.toString());
|
fileModel.setType(GXTFolderItemTypeEnum.UNKNOWN_TYPE.toString());
|
||||||
// logger.trace("**************************************UNKNOWN******* filemodel "+ fileModel.getName());
|
// logger.info("**************************************UNKNOWN******* filemodel "+
|
||||||
|
// fileModel.getName());
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,6 @@ import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import org.apache.log4j.Logger;
|
|
||||||
import org.gcube.application.framework.core.session.ASLSession;
|
import org.gcube.application.framework.core.session.ASLSession;
|
||||||
import org.gcube.common.homelibrary.home.exceptions.HomeNotFoundException;
|
import org.gcube.common.homelibrary.home.exceptions.HomeNotFoundException;
|
||||||
import org.gcube.common.homelibrary.home.exceptions.InternalErrorException;
|
import org.gcube.common.homelibrary.home.exceptions.InternalErrorException;
|
||||||
|
@ -28,6 +27,8 @@ import org.gcube.vomanagement.usermanagement.GroupManager;
|
||||||
import org.gcube.vomanagement.usermanagement.UserManager;
|
import org.gcube.vomanagement.usermanagement.UserManager;
|
||||||
import org.gcube.vomanagement.usermanagement.impl.liferay.LiferayGroupManager;
|
import org.gcube.vomanagement.usermanagement.impl.liferay.LiferayGroupManager;
|
||||||
import org.gcube.vomanagement.usermanagement.impl.liferay.LiferayUserManager;
|
import org.gcube.vomanagement.usermanagement.impl.liferay.LiferayUserManager;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
import com.google.gwt.user.server.rpc.RemoteServiceServlet;
|
import com.google.gwt.user.server.rpc.RemoteServiceServlet;
|
||||||
|
|
||||||
|
@ -38,7 +39,7 @@ import com.google.gwt.user.server.rpc.RemoteServiceServlet;
|
||||||
public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
|
public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
|
||||||
WorkspaceSharingService {
|
WorkspaceSharingService {
|
||||||
|
|
||||||
protected Logger logger = Logger.getLogger(WorkspaceSharingServiceImpl.class);
|
protected Logger logger = LoggerFactory.getLogger(WorkspaceSharingServiceImpl.class);
|
||||||
|
|
||||||
|
|
||||||
protected GWTWorkspaceSharingBuilder getGWTWorkspaceBuilder()
|
protected GWTWorkspaceSharingBuilder getGWTWorkspaceBuilder()
|
||||||
|
@ -72,7 +73,7 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
|
||||||
|
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
|
|
||||||
logger.trace("Get all contacts");
|
logger.info("Get all contacts");
|
||||||
|
|
||||||
// WorkspaceItem parent = workspace.getItem(parentFileModel.getIdentifier()); //get item from workspace
|
// WorkspaceItem parent = workspace.getItem(parentFileModel.getIdentifier()); //get item from workspace
|
||||||
// workspace.getAllScope();
|
// workspace.getAllScope();
|
||||||
|
@ -98,7 +99,7 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
|
||||||
UserManager userManag = new LiferayUserManager();
|
UserManager userManag = new LiferayUserManager();
|
||||||
GroupManager gm = new LiferayGroupManager();
|
GroupManager gm = new LiferayGroupManager();
|
||||||
String groupId = gm.getRootVO().getGroupId();
|
String groupId = gm.getRootVO().getGroupId();
|
||||||
logger.trace("user manager getting list users by group: "+groupId);
|
logger.info("user manager getting list users by group: "+groupId);
|
||||||
return builder.buildGXTListContactsModel(userManag.listUsersByGroup(groupId));
|
return builder.buildGXTListContactsModel(userManag.listUsersByGroup(groupId));
|
||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
@ -111,7 +112,7 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
|
||||||
@Override
|
@Override
|
||||||
public List<InfoContactModel> getListUserSharedByFolderSharedId(String folderSharedId) throws Exception{
|
public List<InfoContactModel> getListUserSharedByFolderSharedId(String folderSharedId) throws Exception{
|
||||||
|
|
||||||
logger.trace("getListUserSharedByFolderSharedId "+ folderSharedId);
|
logger.info("getListUserSharedByFolderSharedId "+ folderSharedId);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
|
@ -126,7 +127,7 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
|
||||||
|
|
||||||
List<String> listPortalLogin = wsFolder.getUsers();
|
List<String> listPortalLogin = wsFolder.getUsers();
|
||||||
|
|
||||||
logger.trace("getListUserSharedByFolderSharedId return "+ listPortalLogin.size() + " user");
|
logger.info("getListUserSharedByFolderSharedId return "+ listPortalLogin.size() + " user");
|
||||||
|
|
||||||
if(isTestMode())
|
if(isTestMode())
|
||||||
return builder.buildGxtInfoContactFromPortalLoginTestMode(listPortalLogin);
|
return builder.buildGxtInfoContactFromPortalLoginTestMode(listPortalLogin);
|
||||||
|
@ -135,7 +136,7 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
|
||||||
|
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
logger.trace("the item with id: "+folderSharedId+ " is not "+WorkspaceItemType.SHARED_FOLDER);
|
logger.info("the item with id: "+folderSharedId+ " is not "+WorkspaceItemType.SHARED_FOLDER);
|
||||||
|
|
||||||
//DEBUG
|
//DEBUG
|
||||||
//System.out.println("the item with id: "+folderSharedId+ " is not "+WorkspaceItemType.SHARED_FOLDER);
|
//System.out.println("the item with id: "+folderSharedId+ " is not "+WorkspaceItemType.SHARED_FOLDER);
|
||||||
|
@ -151,7 +152,7 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
|
||||||
@Override
|
@Override
|
||||||
public InfoContactModel getOwnerByItemId(String itemId) throws Exception {
|
public InfoContactModel getOwnerByItemId(String itemId) throws Exception {
|
||||||
|
|
||||||
logger.trace("get Owner By ItemId "+ itemId);
|
logger.info("get Owner By ItemId "+ itemId);
|
||||||
try {
|
try {
|
||||||
|
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
|
@ -197,12 +198,14 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|
||||||
|
// System.out.println("Get file model by itemId: "+itemId);
|
||||||
|
|
||||||
if(itemId == null || itemId.isEmpty())
|
if(itemId == null || itemId.isEmpty())
|
||||||
throw new Exception("Identifier is null or empty");
|
throw new Exception("Identifier is null or empty");
|
||||||
|
|
||||||
Workspace workspace = getWorkspace();
|
Workspace workspace = getWorkspace();
|
||||||
|
|
||||||
logger.trace("Get item id: "+itemId);
|
logger.info("Get file model by itemId: "+itemId);
|
||||||
|
|
||||||
WorkspaceItem wsItem = workspace.getItem(itemId);
|
WorkspaceItem wsItem = workspace.getItem(itemId);
|
||||||
|
|
||||||
|
@ -214,7 +217,7 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
|
||||||
// String time = String.format("%d msc %d sec", endTime, TimeUnit.MILLISECONDS.toSeconds(endTime));
|
// String time = String.format("%d msc %d sec", endTime, TimeUnit.MILLISECONDS.toSeconds(endTime));
|
||||||
// logger.debug("get child for Grid by id returning element in " + time);
|
// logger.debug("get child for Grid by id returning element in " + time);
|
||||||
|
|
||||||
logger.trace("Getting folder parent");
|
logger.info("Getting folder parent");
|
||||||
|
|
||||||
WorkspaceFolder folderParent = null;
|
WorkspaceFolder folderParent = null;
|
||||||
if(wsItem!=null)
|
if(wsItem!=null)
|
||||||
|
@ -225,11 +228,11 @@ public class WorkspaceSharingServiceImpl extends RemoteServiceServlet implements
|
||||||
|
|
||||||
FileModel parent = null;
|
FileModel parent = null;
|
||||||
if(folderParent!=null){
|
if(folderParent!=null){
|
||||||
|
logger.info("Folder parent has id: "+folderParent.getId() + " and name: "+folderParent.getName());
|
||||||
parent = builder.buildGXTFileModelItem(folderParent, null);
|
parent = builder.buildGXTFileModelItem(folderParent, null);
|
||||||
logger.trace("Folder parent is parent id: "+parent.getIdentifier() + " name: "+parent.getName());
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
logger.trace("Folder parent for item: "+wsItem.getId() +" is null");
|
logger.info("Folder parent for item: "+wsItem.getId() +" is null");
|
||||||
|
|
||||||
//BUILD ITEM
|
//BUILD ITEM
|
||||||
return builder.buildGXTFileModelItem(wsItem, parent);
|
return builder.buildGXTFileModelItem(wsItem, parent);
|
||||||
|
|
|
@ -234,7 +234,7 @@ public class WsUtil {
|
||||||
|
|
||||||
}
|
}
|
||||||
}catch (Exception e) {
|
}catch (Exception e) {
|
||||||
logger.error("an error occurred in getscope filter "+e);
|
logger.error("an error occurred in getscope filter ",e);
|
||||||
}
|
}
|
||||||
|
|
||||||
return scopeUtil;
|
return scopeUtil;
|
||||||
|
@ -244,9 +244,19 @@ public class WsUtil {
|
||||||
* @param session
|
* @param session
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public static GWTWorkspaceSharingBuilder getGWTWorkspaceSharingBuilder(
|
public static GWTWorkspaceSharingBuilder getGWTWorkspaceSharingBuilder(HttpSession httpSession) {
|
||||||
HttpSession session) {
|
ASLSession session = getAslSession(httpSession);
|
||||||
// TODO Auto-generated method stub
|
GWTWorkspaceSharingBuilder builder = null;
|
||||||
return null;
|
|
||||||
|
try{
|
||||||
|
builder = (GWTWorkspaceSharingBuilder) session.getAttribute(WsUtil.WORKSPACEBUILDER_ATTRIBUTE);
|
||||||
|
|
||||||
|
if(builder==null)
|
||||||
|
return new GWTWorkspaceSharingBuilder();
|
||||||
|
}catch (Exception e) {
|
||||||
|
logger.error("an error occurred in get builder ",e);
|
||||||
|
}
|
||||||
|
|
||||||
|
return new GWTWorkspaceSharingBuilder();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue