From 8a4dfa7acf174937035224a7123cd7750060d1a1 Mon Sep 17 00:00:00 2001 From: Francesco Mangiacrapa Date: Fri, 13 May 2016 09:14:42 +0000 Subject: [PATCH] Updated pom version at 6.12 Removed unused code and servlets git-svn-id: http://svn.d4science-ii.research-infrastructures.eu/gcube/trunk/portlets/user/workspace-tree-widget@128590 82a268e6-3cf1-43bd-a215-b396298e98cf --- .classpath | 1 + pom.xml | 46 +- .../user/workspace/WorkspaceTree.gwt.xml | 12 +- .../client/rpc/GWTWorkspaceService.java | 15 +- .../client/rpc/GWTWorkspaceServiceAsync.java | 36 +- .../workspace/server/GWTWorkspaceBuilder.java | 869 +++++++++--------- .../server/GWTWorkspaceServiceImpl.java | 11 +- .../notifications/NotificationsUtil.java | 154 ++-- ...solverReaderParameterForResolverIndex.java | 141 +-- .../server/shortener/UrlShortener.java | 2 + .../user/workspace/server/util/WsUtil.java | 74 +- .../user/workspace/DataMinerTest.java | 35 + 12 files changed, 666 insertions(+), 730 deletions(-) create mode 100644 src/test/java/org/gcube/portlets/user/workspace/DataMinerTest.java diff --git a/.classpath b/.classpath index 4c73e2c..77c0a5d 100644 --- a/.classpath +++ b/.classpath @@ -23,5 +23,6 @@ + diff --git a/pom.xml b/pom.xml index ec2f000..4cd2595 100644 --- a/pom.xml +++ b/pom.xml @@ -10,7 +10,7 @@ org.gcube.portlets.user workspace-tree-widget - 6.11.2-SNAPSHOT + 6.12.0-SNAPSHOT gCube Workspace Tree Widget gCube Workspace Tree Widget is a widget to navigate and interact with gCube Workspace @@ -62,12 +62,13 @@ provided - - com.google.web.bindery - requestfactory-server - ${gwtVersion} - runtime - + + + + + + + @@ -145,37 +146,15 @@ compile - - - - - - - - - - - - org.gcube.common home-library-model - [1.0.0-SNAPSHOT, 2.0.0-SNAPSHOT) - provided - - - org.gcube.common - home-library-jcr - - [2.0.0-SNAPSHOT, 3.0.0-SNAPSHOT) provided org.gcube.common home-library - - [2.0.0-SNAPSHOT, 3.0.0-SNAPSHOT) provided @@ -184,17 +163,22 @@ + + org.gcube.common + home-library-jcr + provided + commons-httpclient commons-httpclient - 3.1 + com.thoughtworks.xstream xstream - 1.4.5 + diff --git a/src/main/java/org/gcube/portlets/user/workspace/WorkspaceTree.gwt.xml b/src/main/java/org/gcube/portlets/user/workspace/WorkspaceTree.gwt.xml index db0822b..6461d75 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/WorkspaceTree.gwt.xml +++ b/src/main/java/org/gcube/portlets/user/workspace/WorkspaceTree.gwt.xml @@ -14,13 +14,8 @@ - - - - + + @@ -29,8 +24,7 @@ - - + diff --git a/src/main/java/org/gcube/portlets/user/workspace/client/rpc/GWTWorkspaceService.java b/src/main/java/org/gcube/portlets/user/workspace/client/rpc/GWTWorkspaceService.java index 1bfa9c8..001a623 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/client/rpc/GWTWorkspaceService.java +++ b/src/main/java/org/gcube/portlets/user/workspace/client/rpc/GWTWorkspaceService.java @@ -152,7 +152,7 @@ public interface GWTWorkspaceService extends RemoteService{ * @return the smart folder results by id * @throws Exception the exception */ - public List getSmartFolderResultsById(String folderId) throws Exception; + public List getSmartFolderResultsById(String folderId) throws Exception; /** * Gets the all smart folders. @@ -283,7 +283,7 @@ public interface GWTWorkspaceService extends RemoteService{ * @throws Exception the exception */ public boolean sendToById(List listContactsId, List listAttachmentsId, String subject, String text) throws Exception; - + /** * Copy item. * @@ -372,15 +372,6 @@ public interface GWTWorkspaceService extends RemoteService{ */ public String itemExistsInWorkpaceFolder(String parentId, String itemName) throws Exception; - /** - * Gets the list user shared by shared item. - * - * @param sharedItemId the shared item id - * @return the list user shared by shared item - * @throws Exception the exception - */ - public List getListUserSharedBySharedItem(String sharedItemId) throws Exception; - /** * Gets the item creation date by id. * @@ -568,7 +559,7 @@ public interface GWTWorkspaceService extends RemoteService{ */ List getTrashContent() throws Exception; - + /** * Gets the AC ls description for workspace item by id. * diff --git a/src/main/java/org/gcube/portlets/user/workspace/client/rpc/GWTWorkspaceServiceAsync.java b/src/main/java/org/gcube/portlets/user/workspace/client/rpc/GWTWorkspaceServiceAsync.java index 77b9292..02781fa 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/client/rpc/GWTWorkspaceServiceAsync.java +++ b/src/main/java/org/gcube/portlets/user/workspace/client/rpc/GWTWorkspaceServiceAsync.java @@ -37,7 +37,7 @@ import com.google.gwt.user.client.rpc.AsyncCallback; * Jul 14, 2015 */ public interface GWTWorkspaceServiceAsync { - + /** * Gets the user workspace size. * @@ -45,7 +45,7 @@ public interface GWTWorkspaceServiceAsync { * @return the user workspace size */ void getUserWorkspaceSize(AsyncCallback callback); - + /** * Gets the root for tree. * @@ -53,7 +53,7 @@ public interface GWTWorkspaceServiceAsync { * @return the root for tree */ void getRootForTree(AsyncCallback callback); - + /** * Gets the root for tree. * @@ -107,7 +107,7 @@ public interface GWTWorkspaceServiceAsync { * @param callback the callback */ void renameItem(String itemId, String newName, String oldName, AsyncCallback callback); - + /** * Creates the folder. * @@ -172,7 +172,7 @@ public interface GWTWorkspaceServiceAsync { * @return the smart folder results by id */ void getSmartFolderResultsById(String folderId, AsyncCallback> callback); - + /** * Gets the all smart folders. * @@ -213,7 +213,7 @@ public interface GWTWorkspaceServiceAsync { * @param callback the callback */ void createExternalUrl(FileModel parentFileModel, String name, String description, String url, AsyncCallback callback); - + /** * Sets the value in session. * @@ -239,7 +239,7 @@ public interface GWTWorkspaceServiceAsync { * @return the all scope */ void getAllScope(AsyncCallback> callback); - + /** * Gets the all contacts. * @@ -249,7 +249,7 @@ public interface GWTWorkspaceServiceAsync { void getAllContacts(AsyncCallback> callback); // void sendTo(List listContacts, List listAttachments, String subject, String text, AsyncCallback callback); - + /** * Send to by id. * @@ -340,7 +340,7 @@ public interface GWTWorkspaceServiceAsync { * @return the URL from application profile */ void getURLFromApplicationProfile(String oid, AsyncCallback callback); - + /** * Gets the owner by item id. * @@ -361,16 +361,6 @@ public interface GWTWorkspaceServiceAsync { void itemExistsInWorkpaceFolder(String parentId, String itemName, AsyncCallback callback); - /** - * Gets the list user shared by shared item. - * - * @param sharedItemId the shared item id - * @param callback the callback - * @return the list user shared by shared item - */ - void getListUserSharedBySharedItem(String sharedItemId, - AsyncCallback> callback); - /** * Gets the item creation date by id. * @@ -436,7 +426,7 @@ public interface GWTWorkspaceServiceAsync { * @return the item for file grid */ void getItemForFileGrid(String itemId, AsyncCallback callback); - + /** * @param itemId * @param asyncCallback @@ -597,7 +587,7 @@ public interface GWTWorkspaceServiceAsync { void executeOperationOnTrash(List listTrashItemIds, WorkspaceTrashOperation operation, AsyncCallback callback); - + /** * Adds the administrators by folder id. * @@ -616,8 +606,8 @@ public interface GWTWorkspaceServiceAsync { * @return the administrators by folder id */ void getAdministratorsByFolderId(String identifier, AsyncCallback> callback); - - + + /** * Gets the ACL by shared folder id. * 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 a12d042..2ee75bc 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 @@ -96,7 +96,7 @@ import com.thoughtworks.xstream.XStream; public class GWTWorkspaceBuilder { /** - * + * */ protected static final String IMAGE_SERVICE_URL = "ImageService"; protected static Logger logger = Logger.getLogger(GWTWorkspaceBuilder.class); @@ -104,27 +104,27 @@ public class GWTWorkspaceBuilder { protected static HashMap hashTestUser = null; // private final String UNKNOWN = "unknown"; // private final String FOLDER = "Folder"; - - + + /** * Instantiates a new GWT workspace builder. */ public GWTWorkspaceBuilder() { } - - + + /** * Used in test mode. * * @return the hash test users */ public static HashMap getHashTestUsers(){ - + if(hashTestUser==null){ hashTestUser = new HashMap(); - - //USERS + + //USERS hashTestUser.put("federico.defaveri", new InfoContactModel("federico.defaveri", "federico.defaveri", "Federico de Faveri",false)); hashTestUser.put("antonio.gioia", new InfoContactModel("antonio.gioia", "antonio.gioia", "Antonio Gioia",false)); hashTestUser.put("fabio.sinibaldi", new InfoContactModel("fabio.sinibaldi", "fabio.sinibaldi", "Fabio Sinibaldi",false)); @@ -134,12 +134,12 @@ public class GWTWorkspaceBuilder { hashTestUser.put(WsUtil.TEST_USER.toString(), new InfoContactModel(WsUtil.TEST_USER, WsUtil.TEST_USER, WsUtil.TEST_USER_FULL_NAME,false)); hashTestUser.put("francesco.mangiacrapa", new InfoContactModel("francesco.mangiacrapa", "francesco.mangiacrapa", "Francesco Mangiacrapa",false)); hashTestUser.put("massimiliano.assante", new InfoContactModel("massimiliano.assante", "massimiliano.assante", "Massimiliano Assante",false)); - + //GROUPS // hashTestUser.put("/gcube/devsec/devVRE", new InfoContactModel("/gcube/devsec/devVRE", "/gcube/devsec/devVRE", "",true)); // hashTestUser.put("/gcube/devsec/gcube-test-test", new InfoContactModel("/gcube/devsec/gcube-test-test", "/gcube/gcube-test-test", "",true)); } - + return hashTestUser; } @@ -155,7 +155,7 @@ public class GWTWorkspaceBuilder { return calendar.getTime(); } - + /** * To date format to string. * @@ -163,15 +163,15 @@ public class GWTWorkspaceBuilder { * @return the string */ protected String toDateFormatToString(Calendar calendar){ - + SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM, yyyy HH:mm:ss z"); - + Date resultdate = getDate(calendar); - + return dateFormat.format(resultdate); } - - + + /** * To date format. * @@ -179,24 +179,24 @@ public class GWTWorkspaceBuilder { * @return the date */ protected Date toDateFormat(Calendar calendar){ - + SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM, yyyy HH:mm:ss z"); - + Date resultdate = getDate(calendar); - + try { - + resultdate = dateFormat.parse(dateFormat.format(resultdate)); - + } catch (ParseException e) { e.printStackTrace(); resultdate = new Date(0); } - + return resultdate; } - - + + /** * Gets the date. * @@ -215,7 +215,7 @@ public class GWTWorkspaceBuilder { return resultdate; } - + /** * Builds the gwt properties. * @@ -229,7 +229,7 @@ public class GWTWorkspaceBuilder { // GWTProperties gwtProperties = new GWTProperties(metadata.getId(), metadata.getProperties()); return new GWTProperties(); } - + /** * Builds the image url. @@ -241,7 +241,7 @@ public class GWTWorkspaceBuilder { { return buildImageServiceUrl(id, ImageRequestType.IMAGE); } - + /** * Builds the thumbnail url. * @@ -252,7 +252,7 @@ public class GWTWorkspaceBuilder { { return buildImageServiceUrl(id, ImageRequestType.THUMBNAIL); } - + /** * Builds the image service url. * @@ -271,7 +271,7 @@ public class GWTWorkspaceBuilder { sb.append(UUID.randomUUID().toString()); return sb.toString(); } - + /** * Builds the gwt workspace image. * @@ -284,22 +284,22 @@ public class GWTWorkspaceBuilder { @SuppressWarnings("unchecked") protected GWTWorkspaceItem buildGWTWorkspaceImage(WorkspaceItem item, boolean isInteralImage, boolean fullDetails) throws InternalErrorException { - + GWTWorkspaceItem gwtImage; - + GWTProperties gwtProperties = buildGWTProperties(item.getProperties()); -// +// if(isInteralImage){ - + GCubeItem image = (GCubeItem) item; //Cast OLD Image Document - + List links = (List) new XStream().fromXML(image.getProperties().getPropertyValue(NodeProperty.ALTERNATIVES.toString())); List parts = (List) new XStream().fromXML(image.getProperties().getPropertyValue(NodeProperty.PARTS.toString())); Map metadatas = (Map) new XStream().fromXML(image.getProperties().getPropertyValue(NodeProperty.METADATA.toString())); Map gwtmetadatas = getMetadatas(metadatas, image.getId()); - - gwtImage = (GWTImageDocument) new GWTImageDocument( - toDate(image.getCreationTime()), + + gwtImage = new GWTImageDocument( + toDate(image.getCreationTime()), image.getId(), gwtProperties, image.getName(), @@ -324,15 +324,15 @@ public class GWTWorkspaceBuilder { links.size(), parts.size()); } - + else{ - + ExternalImage image = (ExternalImage) item; //Cast External Document - + if(fullDetails){ gwtImage = new GWTExternalImage( - toDate(image.getCreationTime()), + toDate(image.getCreationTime()), image.getId(), gwtProperties, image.getName(), @@ -351,7 +351,7 @@ public class GWTWorkspaceBuilder { -1, image.getMimeType()); }else{ - + gwtImage = new GWTExternalImage( buildImageUrl(image.getId()), buildThumbnailUrl(image.getId()), @@ -379,7 +379,7 @@ public class GWTWorkspaceBuilder { { GWTProperties gwtProperties = buildGWTProperties(url.getProperties()); GWTExternalUrl gwtUrl = new GWTExternalUrl( - toDate(url.getCreationTime()), + toDate(url.getCreationTime()), url.getId(), gwtProperties, url.getName(), @@ -390,10 +390,10 @@ public class GWTWorkspaceBuilder { parent, url.getLength(), url.getUrl()); - + return gwtUrl; } - + /** * Builds the gwt worspace url. @@ -407,21 +407,21 @@ public class GWTWorkspaceBuilder { @SuppressWarnings("unchecked") protected GWTWorkspaceItem buildGWTWorspaceUrl(WorkspaceItem item, boolean isInternalUrl, boolean fullDetails) throws InternalErrorException { - + GWTWorkspaceItem gwtUrl = null; GWTProperties gwtProperties = buildGWTProperties(item.getProperties()); if(isInternalUrl){ - + GCubeItem document = (GCubeItem) item; //Cast OLD UrlDocument // UrlDocument document = (UrlDocument) item; //Cast List links = (List) new XStream().fromXML(document.getProperties().getPropertyValue(NodeProperty.ALTERNATIVES.toString())); List parts = (List) new XStream().fromXML(document.getProperties().getPropertyValue(NodeProperty.PARTS.toString())); Map metadatas = (Map) new XStream().fromXML(document.getProperties().getPropertyValue(NodeProperty.METADATA.toString())); Map gwtmetadatas = getMetadatas(metadatas, document.getId()); - + gwtUrl = new GWTUrlDocument( - toDate(document.getCreationTime()), + toDate(document.getCreationTime()), document.getId(), gwtProperties, document.getName(), @@ -441,12 +441,12 @@ public class GWTWorkspaceBuilder { document.getProperties().getPropertyValue(NodeProperty.URL.toString())); } else{ - + ExternalUrl document = (ExternalUrl) item; //Cast - + if(fullDetails){ gwtUrl = new GWTExternalUrl( - toDate(document.getCreationTime()), + toDate(document.getCreationTime()), document.getId(), gwtProperties, document.getName(), @@ -463,8 +463,8 @@ public class GWTWorkspaceBuilder { } return gwtUrl; } - - + + /** * Gets the metadatas. * @@ -475,12 +475,12 @@ public class GWTWorkspaceBuilder { protected Map getMetadatas(Map metadatas, String documentId) { Map gwtmetadatas = new LinkedHashMap(); - + for (Entry metadata : metadatas.entrySet()) gwtmetadatas.put(metadata.getKey(), getMetadata(metadata.getValue(), documentId)); - + return gwtmetadatas; } - + /** * Gets the metadata. * @@ -490,12 +490,12 @@ public class GWTWorkspaceBuilder { */ protected GWTDocumentMetadata getMetadata(DocumentMetadata metadata, String documentId) { - return new GWTDocumentMetadata(metadata.getSchemaName(), - "MetadataService?id="+documentId+"&schema="+metadata.getSchemaName()+"&type="+MetadataFormat.HTML, + return new GWTDocumentMetadata(metadata.getSchemaName(), + "MetadataService?id="+documentId+"&schema="+metadata.getSchemaName()+"&type="+MetadataFormat.HTML, "MetadataService?id="+documentId+"&schema="+metadata.getSchemaName()+"&type="+MetadataFormat.RAW_XML_AS_HTML, "MetadataService?id="+documentId+"&schema="+metadata.getSchemaName()+"&type="+MetadataFormat.FORMATTED_XML); } - + /** * Builds the workspace file model root. * @@ -503,18 +503,18 @@ public class GWTWorkspaceBuilder { * @return the folder model * @throws InternalErrorException the internal error exception */ - public FolderModel buildWorkspaceFileModelRoot(WorkspaceFolder workspaceRoot) throws InternalErrorException { - + public FolderModel buildWorkspaceFileModelRoot(WorkspaceFolder workspaceRoot) throws InternalErrorException { + logger.trace("workspace id: "+ workspaceRoot.getId()); logger.trace("workspace name: "+ workspaceRoot.getName()); logger.trace("workspace path "+ workspaceRoot.getPath()); - + FolderModel root = new FolderModel(workspaceRoot.getId(),workspaceRoot.getName(),null, true, workspaceRoot.isShared(), false); root.setIsRoot(true); return root; } - + /** * Builds the gxt list file model item. @@ -528,19 +528,19 @@ public class GWTWorkspaceBuilder { { List listFileModel = new ArrayList(); - + List listItems = (List) workspaceFolder.getChildren(); - + if(listItems!=null) logger.trace("HL return "+listItems.size()+ " items, converting..."); - + //TEST TIME // Long startTime = System.currentTimeMillis(); // Long endTime = System.currentTimeMillis() - startTime; // String time = String.format("%d msc %d sec", endTime, TimeUnit.MILLISECONDS.toSeconds(endTime)); // logger.trace("tree getChildren() returning "+listItems.size()+" elements in " + time); // startTime = System.currentTimeMillis(); - + for (WorkspaceItem item : listItems){ listFileModel.add(buildGXTFileModelItem(item,parentFolderModel)); } @@ -549,13 +549,13 @@ public class GWTWorkspaceBuilder { // endTime = System.currentTimeMillis() - startTime; // time = String.format("%d msc %d sec", endTime, TimeUnit.MILLISECONDS.toSeconds(endTime)); // logger.trace("tree gxt objects getChildren() returning "+listItems.size()+" elements in " + time); - + return listFileModel; - + // return buildGXTListFileModelItem((WorkspaceItem) workspaceFolder.getChildren(), parentFolderModel); } - - + + /** * Builds the gxt list file model item for attachs. * @@ -565,30 +565,30 @@ public class GWTWorkspaceBuilder { */ protected List buildGXTListFileModelItemForAttachs(List listWorspaceItems) throws InternalErrorException { - + List listFileModel = new ArrayList(); - + for (WorkspaceItem item : listWorspaceItems){ - + FileModel fileModel = null; - + switch (item.getType()) { - + case FOLDER: fileModel = new FolderModel(item.getId(), item.getName(), true, false); fileModel.setType(GXTFolderItemTypeEnum.FOLDER.toString()); break; - - case FOLDER_ITEM: + + case FOLDER_ITEM: fileModel = new FileModel(item.getId(), item.getName(), false); FolderItem folderItem = (FolderItem) item; fileModel = setFolderItemType(fileModel, folderItem); break; - + case SHARED_FOLDER: - + WorkspaceSharedFolder shared = (WorkspaceSharedFolder) item; String name = shared.isVreFolder()?shared.getDisplayName():item.getName(); - + fileModel = new FolderModel(item.getId(), name, true, shared.isVreFolder()); fileModel.setShared(true); fileModel.setType(GXTFolderItemTypeEnum.SHARED_FOLDER.toString()); @@ -598,7 +598,7 @@ public class GWTWorkspaceBuilder { logger.error("gxt conversion return null for item "+item.getName()); break; } - + listFileModel.add(fileModel); } return listFileModel; @@ -613,15 +613,16 @@ public class GWTWorkspaceBuilder { public List buildGxtInfoContactsFromPortalLogins(List listPortalLogin){ List listContact = new ArrayList(); - + if(listPortalLogin!=null && listPortalLogin.size()>0){ for (String portalLogin : listPortalLogin) listContact.add(buildGxtInfoContactFromPortalLogin(portalLogin)); } - + + logger.debug("buildGxtInfoContactsFromPortalLogins return: "+ listContact.size()); return listContact; } - + /** * Builds the gxt info contact from portal login. * @@ -634,11 +635,11 @@ public class GWTWorkspaceBuilder { logger.warn("portal login is null, return empty"); portalLogin = ""; } - + return new InfoContactModel(portalLogin, portalLogin, UserUtil.getUserFullName(portalLogin), false); } - + /** * Used in test mode. * @@ -654,8 +655,8 @@ public class GWTWorkspaceBuilder { return listContact; } - - + + /** * Builds the gxt file model item. * @@ -666,31 +667,33 @@ public class GWTWorkspaceBuilder { */ protected FileModel buildGXTFileModelItem(WorkspaceItem item, FileModel parentFolderModel) throws InternalErrorException { - logger.debug("buildGXTFileModelItem: "+item.getName()); - +// logger.debug("buildGXTFileModelItem: "+item.getName()); + FileModel fileModel = null; - + + /* if(parentFolderModel!=null) - parentFolderModel = (FolderModel) parentFolderModel; - + parentFolderModel = parentFolderModel; + */ + switch (item.getType()) { - - case FOLDER: - + + case FOLDER: + fileModel = new FolderModel(item.getId(), item.getName(), parentFolderModel, true, false, false); fileModel.setType(GXTFolderItemTypeEnum.FOLDER.toString()); fileModel.setShareable(true); fileModel.setDescription(item.getDescription()); break; - - case FOLDER_ITEM: + + case FOLDER_ITEM: fileModel = new FileModel(item.getId(), item.getName(), parentFolderModel, false, false); FolderItem folderItem = (FolderItem) item; fileModel = setFolderItemType(fileModel, folderItem); fileModel.setShareable(true); break; - + case SHARED_FOLDER: WorkspaceSharedFolder shared = (WorkspaceSharedFolder) item; /* @@ -710,9 +713,9 @@ public class GWTWorkspaceBuilder { default: logger.error("gxt conversion return null for item "+item.getName()); break; - + } - + //SET SHARE POLICY if(parentFolderModel!=null && parentFolderModel.isShared()){ fileModel.setShared(true); @@ -722,11 +725,11 @@ public class GWTWorkspaceBuilder { if(item.getParent()!=null && item.getParent().isShared()) fileModel.setShareable(false); } - + return fileModel; } - - + + /** * Builds the gxt list file grid model item for search. * @@ -735,13 +738,13 @@ public class GWTWorkspaceBuilder { * @throws Exception the exception */ public List buildGXTListFileGridModelItemForSearch(List listSearchItems) throws Exception { - List listFileGridModel = new ArrayList(); + List listFileGridModel = new ArrayList(); FileModel parentFileModel = null; for (SearchItem item : listSearchItems) listFileGridModel.add(buildGXTFileGridModelItemForSearch(item,parentFileModel)); return listFileGridModel; } - + /** * Builds the gxt file grid model item for search. * @@ -751,49 +754,49 @@ public class GWTWorkspaceBuilder { * @throws Exception the exception */ private FileGridModel buildGXTFileGridModelItemForSearch(SearchItem item, FileModel parentFileModel) throws Exception{ - + FileGridModel fileGridModel = null; try{ - + switch (item.getType()) { - - case FOLDER: - fileGridModel = (FolderGridModel) new FolderGridModel(item.getId(), item.getName(), toDate(item.getLastModified()), parentFileModel, -1, true, false,false); + + case FOLDER: + fileGridModel = new FolderGridModel(item.getId(), item.getName(), toDate(item.getLastModified()), parentFileModel, -1, true, false,false); fileGridModel.setType(GXTFolderItemTypeEnum.FOLDER.toString()); fileGridModel.setShortcutCategory(GXTCategoryItemInterface.SMF_FOLDERS); fileGridModel.setShareable(true); break; - - case FOLDER_ITEM: + + case FOLDER_ITEM: SearchFolderItem folderItem = (SearchFolderItem) item; fileGridModel = new FileGridModel(item.getId(), item.getName(), toDate(item.getLastModified()), parentFileModel, folderItem.getSize(), false, false); fileGridModel = (FileGridModel) setFolderItemTypeForSearch(fileGridModel, folderItem); break; - + case SHARED_FOLDER: //ATTENTION: SEARCH ITEM IS NOT CASTABLE AT WorkspaceSharedFolder - fileGridModel = (FolderGridModel) new FolderGridModel(item.getId(), item.getName(), toDate(item.getLastModified()), parentFileModel, -1, true, true, item.isVreFolder()); + fileGridModel = new FolderGridModel(item.getId(), item.getName(), toDate(item.getLastModified()), parentFileModel, -1, true, true, item.isVreFolder()); fileGridModel.setType(GXTFolderItemTypeEnum.SHARED_FOLDER.toString()); fileGridModel.setShortcutCategory(GXTCategoryItemInterface.SMF_SHARED_FOLDERS); fileGridModel.setShareable(true); break; - + default: logger.error("gxt conversion return null for item "+item.getName()); break; - + } - + if(parentFileModel!=null && parentFileModel.isShared()){ fileGridModel.setShared(true); fileGridModel.setShareable(false); //UPDATED TO CHANGE PERMISSIONS TO SHARED SUBFOLDERS } - + //OWNER if(item.isShared()){ //IS READ FROM HL ONLY IF THE ITEM IS SHARED fileGridModel.setShared(true); //TEMPORARY SOLUTION: ADDED TO FIX WRONG TYPE SearchFolderItem String portalLogin = item.getOwner(); //IS PORTAL LOGIN - if(portalLogin!=null){ + if(portalLogin!=null){ fileGridModel.setOwnerFullName(UserUtil.getUserFullName(portalLogin)); } } @@ -803,13 +806,13 @@ public class GWTWorkspaceBuilder { } return fileGridModel; - + }catch (Exception e) { logger.error("An error occurred in buildGXTFileGridModelItemForSearch:", e); throw new Exception(e); } } - + /** * Builds the gxt list file grid model item. * @@ -819,20 +822,20 @@ public class GWTWorkspaceBuilder { * @throws InternalErrorException the internal error exception */ public List buildGXTListFileGridModelItem(List listWorkspaceItems, FileModel parentFileModel) throws InternalErrorException{ - + Long startTime = System.currentTimeMillis(); List listFileGridModel = new ArrayList(); - + for (WorkspaceItem item : listWorkspaceItems) listFileGridModel.add(buildGXTFileGridModelItem(item,parentFileModel)); - + Long endTime = System.currentTimeMillis() - startTime; String time = String.format("%d msc %d sec", endTime, TimeUnit.MILLISECONDS.toSeconds(endTime)); logger.trace("##GRID FILLING: gxt grid objects getChildren() returning "+listWorkspaceItems.size()+" elements in " + time); return listFileGridModel; } - + /** * Builds the gxt file grid model item. * @@ -842,52 +845,52 @@ public class GWTWorkspaceBuilder { * @throws InternalErrorException the internal error exception */ public FileGridModel buildGXTFileGridModelItem(WorkspaceItem item, FileModel parentFileModel) throws InternalErrorException{ - - + + FileGridModel fileGridModel = null; - + switch (item.getType()) { - - case FOLDER: - fileGridModel = (FolderGridModel) new FolderGridModel(item.getId(), item.getName(), toDate(item.getLastModificationTime()), parentFileModel, -1, true, false,false); + + case FOLDER: + fileGridModel = new FolderGridModel(item.getId(), item.getName(), toDate(item.getLastModificationTime()), parentFileModel, -1, true, false,false); fileGridModel.setType(GXTFolderItemTypeEnum.FOLDER.toString()); fileGridModel.setShortcutCategory(GXTCategoryItemInterface.SMF_FOLDERS); fileGridModel.setShareable(true); fileGridModel.setDescription(item.getDescription()); break; - - case FOLDER_ITEM: + + case FOLDER_ITEM: FolderItem folderItem = (FolderItem) item; fileGridModel = new FileGridModel(item.getId(), item.getName(), toDate(item.getLastModificationTime()), parentFileModel, folderItem.getLength(), false, false); fileGridModel = (FileGridModel) setFolderItemType(fileGridModel, folderItem); break; - + case SHARED_FOLDER: WorkspaceSharedFolder shared = (WorkspaceSharedFolder) item; String name = shared.isVreFolder()?shared.getDisplayName():item.getName(); - fileGridModel = (FolderGridModel) new FolderGridModel(item.getId(), name, toDate(item.getLastModificationTime()), parentFileModel, -1, true, true, shared.isVreFolder()); + fileGridModel = new FolderGridModel(item.getId(), name, toDate(item.getLastModificationTime()), parentFileModel, -1, true, true, shared.isVreFolder()); fileGridModel.setType(GXTFolderItemTypeEnum.SHARED_FOLDER.toString()); fileGridModel.setShortcutCategory(GXTCategoryItemInterface.SMF_SHARED_FOLDERS); fileGridModel.setShareable(true); fileGridModel.setDescription(item.getDescription()); break; - + default: logger.error("gxt conversion return null for item "+item.getName()); break; - + } if(parentFileModel!=null && parentFileModel.isShared()){ fileGridModel.setShared(true); fileGridModel.setShareable(false); //UPDATED TO CHANGE PERMISSIONS TO SHARED SUBFOLDERS } - + //OWNER if(item.isShared()){ //IS READ FROM HL ONLY IF THE ITEM IS SHARED fileGridModel.setShared(true); //NOT REMOVE IT IS IMPORTAT SEE #1459 User owner = item.getOwner(); - if(owner!=null){ + if(owner!=null){ // System.out.println("++++reading owner"); String portalLogin = owner.getPortalLogin(); fileGridModel.setOwnerFullName(UserUtil.getUserFullName(portalLogin)); @@ -898,10 +901,10 @@ public class GWTWorkspaceBuilder { // fileGridModel.setOwner(new InfoContactModel(userLogged.getId(), userLogged.getLogin(), userLogged.getName())); fileGridModel.setOwnerFullName(userLogged.getName()); } - + return fileGridModel; } - + /** * Sets the folder item type for search. * @@ -910,70 +913,70 @@ public class GWTWorkspaceBuilder { * @return the file model */ protected FileModel setFolderItemTypeForSearch(FileModel fileModel, SearchFolderItem searchFolderItem){ - + if(searchFolderItem.getFolderItemType()==null){ logger.trace("Search folder item type is null for "+searchFolderItem.getId() + " name: "+searchFolderItem.getName()); //FOR DEBUG // System.out.println("Search folder item type is null for "+searchFolderItem.getId() + " name: "+searchFolderItem.getName()); return fileModel; } - + switch(searchFolderItem.getFolderItemType()) { - case EXTERNAL_IMAGE: + case EXTERNAL_IMAGE: fileModel.setFolderItemType(GXTFolderItemTypeEnum.EXTERNAL_IMAGE); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_IMAGES); fileModel.setType(searchFolderItem.getMimeType()); break; - case EXTERNAL_FILE: + case EXTERNAL_FILE: fileModel.setFolderItemType(GXTFolderItemTypeEnum.EXTERNAL_FILE); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_DOCUMENTS); fileModel.setType(searchFolderItem.getMimeType()); break; - case EXTERNAL_PDF_FILE: + case EXTERNAL_PDF_FILE: fileModel.setFolderItemType(GXTFolderItemTypeEnum.EXTERNAL_PDF_FILE); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_DOCUMENTS); fileModel.setType(searchFolderItem.getMimeType()); break; - case EXTERNAL_URL: + case EXTERNAL_URL: fileModel.setFolderItemType(GXTFolderItemTypeEnum.EXTERNAL_URL); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_LINKS); break; - case REPORT_TEMPLATE: + case REPORT_TEMPLATE: fileModel.setFolderItemType(GXTFolderItemTypeEnum.REPORT_TEMPLATE); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_REPORTS); break; - case REPORT: + case REPORT: fileModel.setFolderItemType(GXTFolderItemTypeEnum.REPORT); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_REPORTS); break; - case QUERY: + case QUERY: fileModel.setFolderItemType(GXTFolderItemTypeEnum.QUERY); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_DOCUMENTS); break; - case TIME_SERIES: + case TIME_SERIES: fileModel.setFolderItemType(GXTFolderItemTypeEnum.TIME_SERIES); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_TIMESERIES); break; - case PDF_DOCUMENT: + case PDF_DOCUMENT: fileModel.setFolderItemType(GXTFolderItemTypeEnum.PDF_DOCUMENT); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_DOCUMENTS); break; - case IMAGE_DOCUMENT: + case IMAGE_DOCUMENT: fileModel.setFolderItemType(GXTFolderItemTypeEnum.IMAGE_DOCUMENT); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_IMAGES); fileModel.setType(searchFolderItem.getMimeType()); break; - case DOCUMENT: + case DOCUMENT: fileModel.setFolderItemType(GXTFolderItemTypeEnum.DOCUMENT); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_DOCUMENTS); fileModel.setType(searchFolderItem.getMimeType()); break; - case URL_DOCUMENT: + case URL_DOCUMENT: fileModel.setFolderItemType(GXTFolderItemTypeEnum.URL_DOCUMENT); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_DOCUMENTS); break; - case METADATA: + case METADATA: fileModel.setFolderItemType(GXTFolderItemTypeEnum.METADATA); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_DOCUMENTS); break; @@ -985,10 +988,10 @@ public class GWTWorkspaceBuilder { fileModel.setFolderItemType(GXTFolderItemTypeEnum.UNKNOWN_TYPE); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_UNKNOWN); fileModel.setType(GXTFolderItemTypeEnum.UNKNOWN_TYPE.toString()); - break; + break; } - - return fileModel; + + return fileModel; } /** @@ -999,52 +1002,52 @@ public class GWTWorkspaceBuilder { * @return the file model */ protected FileModel setFolderItemType(FileModel fileModel, FolderItem worspaceFolderItem){ - + switch(worspaceFolderItem.getFolderItemType()) { - case EXTERNAL_IMAGE: + case EXTERNAL_IMAGE: fileModel.setFolderItemType(GXTFolderItemTypeEnum.EXTERNAL_IMAGE); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_IMAGES); ExternalImage extImage = (ExternalImage) worspaceFolderItem; fileModel.setType(extImage.getMimeType()); break; - case EXTERNAL_FILE: + case EXTERNAL_FILE: fileModel.setFolderItemType(GXTFolderItemTypeEnum.EXTERNAL_FILE); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_DOCUMENTS); ExternalFile extFile = (ExternalFile) worspaceFolderItem; fileModel.setType(extFile.getMimeType()); break; - case EXTERNAL_PDF_FILE: + case EXTERNAL_PDF_FILE: fileModel.setFolderItemType(GXTFolderItemTypeEnum.EXTERNAL_PDF_FILE); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_DOCUMENTS); ExternalPDFFile pdfExt = (ExternalPDFFile) worspaceFolderItem; fileModel.setType(pdfExt.getMimeType()); break; - case EXTERNAL_URL: + case EXTERNAL_URL: fileModel.setFolderItemType(GXTFolderItemTypeEnum.EXTERNAL_URL); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_LINKS); break; - case REPORT_TEMPLATE: + case REPORT_TEMPLATE: fileModel.setFolderItemType(GXTFolderItemTypeEnum.REPORT_TEMPLATE); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_REPORTS); break; - case REPORT: + case REPORT: fileModel.setFolderItemType(GXTFolderItemTypeEnum.REPORT); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_REPORTS); break; - case QUERY: + case QUERY: fileModel.setFolderItemType(GXTFolderItemTypeEnum.QUERY); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_DOCUMENTS); break; - case TIME_SERIES: + case TIME_SERIES: fileModel.setFolderItemType(GXTFolderItemTypeEnum.TIME_SERIES); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_TIMESERIES); break; - case PDF_DOCUMENT: + case PDF_DOCUMENT: fileModel.setFolderItemType(GXTFolderItemTypeEnum.PDF_DOCUMENT); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_DOCUMENTS); break; - case IMAGE_DOCUMENT: + case IMAGE_DOCUMENT: fileModel.setFolderItemType(GXTFolderItemTypeEnum.IMAGE_DOCUMENT); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_IMAGES); // ImageDocument imgDoc = (ImageDocument) worspaceFolderItem; @@ -1055,7 +1058,7 @@ public class GWTWorkspaceBuilder { logger.error("IMAGE_DOCUMENT InternalErrorException when getting MimeType on "+fileModel.getIdentifier()); } break; - case DOCUMENT: + case DOCUMENT: fileModel.setFolderItemType(GXTFolderItemTypeEnum.DOCUMENT); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_DOCUMENTS); // Document doc = (Document) worspaceFolderItem; @@ -1066,11 +1069,11 @@ public class GWTWorkspaceBuilder { logger.error("DOCUMENT InternalErrorException when getting MimeType on "+fileModel.getIdentifier()); } break; - case URL_DOCUMENT: + case URL_DOCUMENT: fileModel.setFolderItemType(GXTFolderItemTypeEnum.URL_DOCUMENT); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_DOCUMENTS); break; - case METADATA: + case METADATA: fileModel.setFolderItemType(GXTFolderItemTypeEnum.METADATA); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_DOCUMENTS); break; @@ -1082,12 +1085,12 @@ public class GWTWorkspaceBuilder { fileModel.setFolderItemType(GXTFolderItemTypeEnum.UNKNOWN_TYPE); fileModel.setShortcutCategory(GXTCategoryItemInterface.SMF_UNKNOWN); fileModel.setType(GXTFolderItemTypeEnum.UNKNOWN_TYPE.toString()); - break; + break; } - + return fileModel; } - + /** * Gets the public link for folder item. * @@ -1096,52 +1099,52 @@ public class GWTWorkspaceBuilder { * @throws InternalErrorException the internal error exception */ public String getPublicLinkForFolderItem(FolderItem worspaceFolderItem) throws InternalErrorException{ - + if(worspaceFolderItem==null) return ""; - + try{ switch(worspaceFolderItem.getFolderItemType()){ - case EXTERNAL_IMAGE: + case EXTERNAL_IMAGE: return ((ExternalImage) worspaceFolderItem).getPublicLink(); - case EXTERNAL_FILE: + case EXTERNAL_FILE: return ((ExternalFile) worspaceFolderItem).getPublicLink(); - case EXTERNAL_PDF_FILE: + case EXTERNAL_PDF_FILE: return ((ExternalPDFFile) worspaceFolderItem).getPublicLink(); - case EXTERNAL_URL: + case EXTERNAL_URL: break; - case REPORT_TEMPLATE: + case REPORT_TEMPLATE: break; case REPORT: break; - case QUERY: + case QUERY: break; - case TIME_SERIES: + case TIME_SERIES: break; case PDF_DOCUMENT: break; - case IMAGE_DOCUMENT: + case IMAGE_DOCUMENT: GCubeItem imgDoc = (GCubeItem) worspaceFolderItem; //Cast GCubeItem return imgDoc.getPublicLink(false); - case DOCUMENT: + case DOCUMENT: break; - case URL_DOCUMENT: + case URL_DOCUMENT: break; - case METADATA: + case METADATA: break; default: return ""; } - + }catch (Exception e) { logger.error("an error occurred when get public link for item: "+worspaceFolderItem.getName()); return ""; } - + return ""; } - - + + /** * Gets the storage id for folder item. @@ -1151,48 +1154,48 @@ public class GWTWorkspaceBuilder { * @throws InternalErrorException the internal error exception */ public String getStorageIDForFolderItem(FolderItem worspaceFolderItem) throws InternalErrorException{ - + if(worspaceFolderItem==null) return ""; - + try{ switch(worspaceFolderItem.getFolderItemType()){ - case EXTERNAL_IMAGE: + case EXTERNAL_IMAGE: return ((ExternalImage) worspaceFolderItem).getStorageID(); - case EXTERNAL_FILE: + case EXTERNAL_FILE: return ((ExternalFile) worspaceFolderItem).getStorageID(); - case EXTERNAL_PDF_FILE: + case EXTERNAL_PDF_FILE: return ((ExternalPDFFile) worspaceFolderItem).getStorageID(); - case EXTERNAL_URL: + case EXTERNAL_URL: break; - case REPORT_TEMPLATE: + case REPORT_TEMPLATE: break; case REPORT: break; - case QUERY: + case QUERY: break; - case TIME_SERIES: + case TIME_SERIES: break; case PDF_DOCUMENT: break; - case IMAGE_DOCUMENT: + case IMAGE_DOCUMENT: GCubeItem imgDoc = (GCubeItem) worspaceFolderItem; //Cast GCubeItem return imgDoc.getStorageID(); - case DOCUMENT: + case DOCUMENT: break; - case URL_DOCUMENT: + case URL_DOCUMENT: break; - case METADATA: + case METADATA: break; default: return ""; } - + }catch (Exception e) { logger.error("an error occurred when get public link for item: "+worspaceFolderItem.getName()); return ""; } - + return ""; } @@ -1206,36 +1209,36 @@ public class GWTWorkspaceBuilder { */ public FolderModel buildGXTFolderModelItem(WorkspaceFolder wsFolder, FileModel parent) throws InternalErrorException { logger.debug("buildGXTFolderModelItem..."); - + String name = ""; - + //MANAGEMENT SHARED FOLDER NAME if(wsFolder.isShared() && wsFolder.getType().equals(WorkspaceItemType.SHARED_FOLDER)){ WorkspaceSharedFolder shared = (WorkspaceSharedFolder) wsFolder; name = shared.isVreFolder()?shared.getDisplayName():wsFolder.getName(); }else name = wsFolder.getName(); - + //MANAGEMENT SPECIAL FOLDER // if(wsFolder.getName().compareTo("MySpecialFolders")==0 && wsFolder.getParent()!=null && wsFolder.getParent().isRoot()){ // WorkspaceSharedFolder shared = (WorkspaceSharedFolder) wsFolder; // name = shared.isVreFolder()?shared.getDisplayName():wsFolder.getName(); // }else // name = wsFolder.getName(); - + FolderModel folder = new FolderModel(wsFolder.getId(), name, parent, true, wsFolder.isShared(), false); folder.setShareable(true); folder.setDescription(wsFolder.getDescription()); // folder.setOwner(wsFolder.getOwner()); - + if(parent != null && parent.isShared()){ folder.setShared(true); folder.setShareable(false); } - - return folder; + + return folder; } - + /** * TODO ********TEMPORARY SOLUTION HL MUST MANAGE SPECIAL FOLDER AS WORKSPACESPECIALFOLDER**** * REMOVE THIS METHOD AND ADDING INSTANCE OF AT buildGXTFolderModelItem. @@ -1247,9 +1250,9 @@ public class GWTWorkspaceBuilder { * @throws InternalErrorException the internal error exception */ public FolderModel buildGXTFolderModelItemHandleSpecialFolder(WorkspaceFolder wsFolder, FileModel parent, String specialFolderName) throws InternalErrorException { - + String name = ""; - + logger.debug("buildGXTFolderModelItemHandleSpecialFolder to folder: "+wsFolder.getName()); //MANAGEMENT SHARED FOLDER NAME if(wsFolder.isShared() && wsFolder.getType().equals(WorkspaceItemType.SHARED_FOLDER)){ @@ -1257,7 +1260,7 @@ public class GWTWorkspaceBuilder { WorkspaceSharedFolder shared = (WorkspaceSharedFolder) wsFolder; logger.debug("shared.isVreFolder(): "+shared.isVreFolder()); name = shared.isVreFolder()?shared.getDisplayName():wsFolder.getName(); - + /* if(shared.isVreFolder()) logger.debug("shared.getDisplayName(): "+shared.getDisplayName()); @@ -1274,9 +1277,9 @@ public class GWTWorkspaceBuilder { logger.debug("MANAGEMENT Base Folder name.."); name = wsFolder.getName(); } - + logger.debug("Name is: "+name); - + FolderModel folder = new FolderModel(wsFolder.getId(), name, parent, true, wsFolder.isShared(), false); folder.setShareable(true); folder.setIsRoot(wsFolder.isRoot()); @@ -1289,7 +1292,7 @@ public class GWTWorkspaceBuilder { } return folder; } - + /** * Builds the gwt workspace file details. * @@ -1299,7 +1302,7 @@ public class GWTWorkspaceBuilder { * @throws InternalErrorException the internal error exception */ public FileDetailsModel buildGWTWorkspaceFileDetails(WorkspaceItem wsItem, FileModel item) throws InternalErrorException { - + FileDetailsModel fileDetailsModel = new FileDetailsModel( wsItem.getId(), wsItem.getName(), @@ -1312,7 +1315,7 @@ public class GWTWorkspaceBuilder { toDate(wsItem.getLastModificationTime()), buildGXTInfoContactModel(wsItem.getOwner()), wsItem.isShared()); - + return fileDetailsModel; } @@ -1324,57 +1327,57 @@ public class GWTWorkspaceBuilder { * @throws InternalErrorException the internal error exception */ protected String getFolderItemTypeCategory(SearchItem item) throws InternalErrorException{ - + switch (item.getType()) { - - case FOLDER: - + + case FOLDER: + return GXTCategoryItemInterface.SMF_DOCUMENTS; - - case FOLDER_ITEM: - + + case FOLDER_ITEM: + SearchFolderItem folderItem = (SearchFolderItem) item; switch(folderItem.getFolderItemType()) { - case EXTERNAL_IMAGE: + case EXTERNAL_IMAGE: return GXTCategoryItemInterface.SMF_IMAGES; - case EXTERNAL_FILE: + case EXTERNAL_FILE: return GXTCategoryItemInterface.SMF_DOCUMENTS; - case EXTERNAL_PDF_FILE: + case EXTERNAL_PDF_FILE: return GXTCategoryItemInterface.SMF_DOCUMENTS; - case EXTERNAL_URL: + case EXTERNAL_URL: return GXTCategoryItemInterface.SMF_LINKS; - case REPORT_TEMPLATE: + case REPORT_TEMPLATE: return GXTCategoryItemInterface.SMF_REPORTS; - case REPORT: + case REPORT: return GXTCategoryItemInterface.SMF_REPORTS; - case QUERY: + case QUERY: return GXTCategoryItemInterface.SMF_DOCUMENTS; - case TIME_SERIES: - return GXTCategoryItemInterface.SMF_TIMESERIES; - case PDF_DOCUMENT: + case TIME_SERIES: + return GXTCategoryItemInterface.SMF_TIMESERIES; + case PDF_DOCUMENT: return GXTCategoryItemInterface.SMF_DOCUMENTS; - case IMAGE_DOCUMENT: - return GXTCategoryItemInterface.SMF_IMAGES; - case DOCUMENT: + case IMAGE_DOCUMENT: + return GXTCategoryItemInterface.SMF_IMAGES; + case DOCUMENT: return GXTCategoryItemInterface.SMF_DOCUMENTS; - case URL_DOCUMENT: - return GXTCategoryItemInterface.SMF_DOCUMENTS; - case METADATA: + case URL_DOCUMENT: + return GXTCategoryItemInterface.SMF_DOCUMENTS; + case METADATA: return GXTCategoryItemInterface.SMF_DOCUMENTS; case GCUBE_ITEM: return GXTCategoryItemInterface.SMF_GCUBE_ITEMS; default: return GXTCategoryItemInterface.SMF_UNKNOWN; } - + default: logger.error("gxt conversion return null for item "+item.getName()); return GXTCategoryItemInterface.SMF_UNKNOWN; } - + } - + /** * Filter list file grid model item by category. * @@ -1384,17 +1387,17 @@ public class GWTWorkspaceBuilder { * @throws Exception the exception */ public List filterListFileGridModelItemByCategory(List listSearchItem, String category) throws Exception { - + List filteredList = new ArrayList(); logger.trace("filterListFileGridModelItemByCategory - Category:" + category + "listSearchItem size " + listSearchItem.size()); for(SearchItem searchItem: listSearchItem){ logger.trace("wsItem: " + searchItem.getName()); if(category.equals(getFolderItemTypeCategory(searchItem))) - filteredList.add(buildGXTFileGridModelItemForSearch(searchItem,null)); + filteredList.add(buildGXTFileGridModelItemForSearch(searchItem,null)); } return filteredList; } - + /** * Builds the gxt list smart folder model. @@ -1405,14 +1408,14 @@ public class GWTWorkspaceBuilder { */ public List buildGXTListSmartFolderModel(List listWorkspaceSmartFolder) throws Exception { List listSmartFolder = new ArrayList(); - + for(WorkspaceSmartFolder workspaceFolder : listWorkspaceSmartFolder) listSmartFolder.add(buildGXTSmartFolderModel(workspaceFolder, "")); - + return listSmartFolder; } - - + + /** * Builds the gxt smart folder model. * @@ -1422,12 +1425,12 @@ public class GWTWorkspaceBuilder { * @throws Exception the exception */ public SmartFolderModel buildGXTSmartFolderModel(WorkspaceSmartFolder wsFolder, String query) throws Exception { - + SmartFolderModel smartFolderModel = new SmartFolderModel( - wsFolder.getId(), - wsFolder.getName(), + wsFolder.getId(), + wsFolder.getName(), query); - + logger.trace("in return SmartFolder: " + smartFolderModel.getIdentifier() + " " + smartFolderModel.getName() + " " + smartFolderModel.getQuery()); return smartFolderModel; } @@ -1440,13 +1443,13 @@ public class GWTWorkspaceBuilder { * @return the list */ public List buildGXTListScopeModel(List listFilteredScopes, Map mapPortalScopes) { - + List listScopeModel = new ArrayList(); for(String scope: listFilteredScopes) listScopeModel.add(new ScopeModel(mapPortalScopes.get(scope),scope)); - + return listScopeModel; - + } /** @@ -1457,18 +1460,18 @@ public class GWTWorkspaceBuilder { * @throws InternalErrorException the internal error exception */ public List buildGXTListContactsModelFromUserModel(List listUsers) throws InternalErrorException { - + List listContactsModel = new ArrayList(); - + if(listUsers==null) return listContactsModel; - + logger.trace("List size returned from Portal VO is: "+ listUsers.size()); logger.trace("Building list contact model list user model"); for (UserModel userModel : listUsers) { String fullName = userModel.getFullname(); - + if(fullName!=null && !fullName.isEmpty()) listContactsModel.add(new InfoContactModel(userModel.getUserId()+"", userModel.getScreenName(), fullName, false)); else @@ -1478,7 +1481,7 @@ public class GWTWorkspaceBuilder { return listContactsModel; } - + /** * Builds the gxt list contacts model from gcube group. * @@ -1487,23 +1490,23 @@ public class GWTWorkspaceBuilder { * @throws InternalErrorException the internal error exception */ public List buildGXTListContactsModelFromGcubeGroup(List list) throws InternalErrorException { - + List listContactsModel = new ArrayList(); - + if(list==null) return listContactsModel; - + logger.trace("List size returned from GcubeGroup is: "+ list.size()); - + logger.trace("Building list contact model..."); - + for (GCubeGroup group : list){ try{ String groupDN = group.getDisplayName(); - + if(groupDN==null || groupDN.isEmpty()) groupDN = group.getName(); - + if(group.getName()== null || group.getName().isEmpty()) logger.warn("Skipping group with null or empty name "+group); else{ @@ -1514,20 +1517,20 @@ public class GWTWorkspaceBuilder { }catch (InternalErrorException e) { logger.warn("Dispaly name is not available to group "+group); logger.warn("Adding get name property "+group.getName()); - + if(group.getName()== null || group.getName().isEmpty()) logger.warn("Skipping group with null or empty name "+group); else listContactsModel.add(new InfoContactModel(group.getName(), group.getName(), group.getName(), true)); } } - + logger.trace("List GCubeGroup contact model completed, return " +listContactsModel.size()+" contacts"); return listContactsModel; } - + /** * Builds the list login from contanct model. * @@ -1536,17 +1539,17 @@ public class GWTWorkspaceBuilder { * @throws InternalErrorException the internal error exception */ public List buildListLoginFromContanctModel(List listContactsModel) throws InternalErrorException { - + List listPortalLogin = new ArrayList(); - + for(InfoContactModel contact: listContactsModel){ listPortalLogin.add(contact.getLogin()); - + } return listPortalLogin; } - - + + /** @@ -1558,31 +1561,31 @@ public class GWTWorkspaceBuilder { * @throws InternalErrorException the internal error exception */ public List buildGXTListMessageModelForGrid(List listMessages, String typeMessages) throws InternalErrorException { - + List listMessageModel = new ArrayList(); - - + + for(WorkspaceMessage mess: listMessages){ List listAttachs = mess.getAttachments(); List listAttachsNames = new ArrayList(); - + logger.trace("IN SERVER MESSAGE TYPE: " +typeMessages); logger.trace("subject " + mess.getSubject()); - + if(listAttachs!=null){ for(WorkspaceItem attach: listAttachs){ listAttachsNames.add(attach.getName()); logger.trace("Received attach: "+ attach.getName() + " " +attach.getId()); } } - + listMessageModel.add(new MessageModel(mess.getId(), mess.getSubject(), buildGXTInfoContactModel(mess.getSender()), toDate(mess.getSendTime()), listAttachsNames, typeMessages, mess.isRead())); } // listMessageModel.add(new MessageModel("1", "subject", new InfoContactModel("1", "Federico"), "2001.07.04 at 12:08:56", 5)); // listMessageModel.add(new MessageModel("2", "subject 2", new InfoContactModel("1", "Federico"), "2005.07.04 at 12:08:56", 2)); // listMessageModel.add(new MessageModel("3", "subject 3", new InfoContactModel("3", "Francesco"), "2001.07.04 at 15:08:56", 3)); - + return listMessageModel; } @@ -1596,15 +1599,15 @@ public class GWTWorkspaceBuilder { * @throws InternalErrorException the internal error exception */ public MessageModel buildGXTMessageModel(WorkspaceMessage mess, List listWorkspaceItems, String messageType) throws InternalErrorException { - + List listAttachs = buildGXTListFileModelItemForAttachs(listWorkspaceItems); -// List listContacts = new ArrayList(); +// List listContacts = new ArrayList(); // mess.getAddresses(); // listContacts.add(new InfoContactModel("1", "Empty")); return new MessageModel(mess.getId(), mess.getSubject(), buildGXTInfoContactModel(mess.getSender()), toDate(mess.getSendTime()), mess.getBody(), listAttachs, mess.getAddresses(), messageType, mess.isRead()); - + } - + /** * Builds the gxt info contact model. * @@ -1613,10 +1616,10 @@ public class GWTWorkspaceBuilder { * @throws InternalErrorException the internal error exception */ public InfoContactModel buildGXTInfoContactModel(User user) throws InternalErrorException{ - + if(user!=null) return new InfoContactModel(user.getId(), user.getPortalLogin(), UserUtil.getUserFullName(user.getPortalLogin()), false); - + return new InfoContactModel(); } @@ -1628,19 +1631,19 @@ public class GWTWorkspaceBuilder { * @throws InternalErrorException the internal error exception */ public List buildGXTListBulkCreatorModel(List listFBC) throws InternalErrorException { - + List listBulkCreatorModel = new ArrayList(); - + for (FolderBulkCreator item : listFBC){ - + BulkCreatorModel bulk; - + if(item.getStatus()<1) bulk = new BulkCreatorModel(item.getId(), item.getDestinationFolder().getName(), item.getStatus(), BulkCreatorModel.ONGOING, item.getNumberOfRequests(), item.getFailures()); else{//status = 1 - + int failures = item.getFailures(); - + if(failures==0) bulk = new BulkCreatorModel(item.getId(), item.getDestinationFolder().getName(), item.getStatus(), BulkCreatorModel.COMPLETED, item.getNumberOfRequests(), item.getFailures()); else @@ -1663,145 +1666,145 @@ public class GWTWorkspaceBuilder { * @return the list */ public List buildGXTAccountingItem(List accoutings, GxtAccountingEntryType gxtEntryType) { - + List listAccFields = new ArrayList(); - + if(accoutings!=null){ logger.trace("accoutings size "+accoutings.size()+ "converting"); - + for (AccountingEntry accountingEntry : accoutings) { - + GxtAccountingField af = new GxtAccountingField(); - + InfoContactModel user = buildGxtInfoContactFromPortalLogin(accountingEntry.getUser()); - + af.setUser(user); af.setDate(toDate(accountingEntry.getDate())); - + switch (accountingEntry.getEntryType()) { case CREATE: - + if(gxtEntryType==null || gxtEntryType.equals(GxtAccountingEntryType.ALL) || gxtEntryType.equals(GxtAccountingEntryType.ALLWITHOUTREAD) || gxtEntryType.equals(GxtAccountingEntryType.CREATE)){ AccountingEntryCreate create = (AccountingEntryCreate) accountingEntry; af.setOperation(GxtAccountingEntryType.CREATE); - + // af.setDescription(GxtAccountingEntryType.CREATE.getName() + " by "+user.getName()); String msg = ""; if(create.getItemName()==null || create.getItemName().isEmpty()) msg = GxtAccountingEntryType.CREATE.getId() + " by "+user.getName(); else msg = create.getItemName() + " " + GxtAccountingEntryType.CREATE.getName() + " by "+user.getName(); - + af.setDescription(msg); } - + break; - + case READ: if(gxtEntryType==null || gxtEntryType.equals(GxtAccountingEntryType.ALL) || gxtEntryType.equals(GxtAccountingEntryType.READ)){ - + AccountingEntryRead read = (AccountingEntryRead) accountingEntry; af.setOperation(GxtAccountingEntryType.READ); af.setDescription(read.getItemName() + " " + GxtAccountingEntryType.READ.getName() + " by "+user.getName()); - + String msg = ""; if(read.getItemName()==null || read.getItemName().isEmpty()) msg = GxtAccountingEntryType.READ.getId() + " by "+user.getName(); else msg = read.getItemName() + " " + GxtAccountingEntryType.READ.getName() + " by "+user.getName(); - + af.setDescription(msg); } - + break; - + case CUT: - + if(gxtEntryType==null || gxtEntryType.equals(GxtAccountingEntryType.ALL) || gxtEntryType.equals(GxtAccountingEntryType.ALLWITHOUTREAD) || gxtEntryType.equals(GxtAccountingEntryType.CUT)){ - + af.setOperation(GxtAccountingEntryType.CUT); AccountingEntryCut cut = (AccountingEntryCut) accountingEntry; - + String msg = ""; if(cut.getItemName()==null || cut.getItemName().isEmpty()) msg = GxtAccountingEntryType.CUT.getName() +" by "+user.getName(); else msg = cut.getItemName()+" "+GxtAccountingEntryType.CUT.getName() +" by "+user.getName(); - + af.setDescription(msg); } - + break; - + case PASTE: - + if(gxtEntryType==null || gxtEntryType.equals(GxtAccountingEntryType.ALL) || gxtEntryType.equals(GxtAccountingEntryType.ALLWITHOUTREAD) || gxtEntryType.equals(GxtAccountingEntryType.PASTE)){ - - af.setOperation(GxtAccountingEntryType.PASTE); + + af.setOperation(GxtAccountingEntryType.PASTE); AccountingEntryPaste paste = (AccountingEntryPaste) accountingEntry; af.setDescription(GxtAccountingEntryType.PASTE.getName() + " from "+paste.getFromPath()+" by "+user.getName()); } - + break; - + case REMOVAL: - + if(gxtEntryType==null || gxtEntryType.equals(GxtAccountingEntryType.ALL) || gxtEntryType.equals(GxtAccountingEntryType.ALLWITHOUTREAD) || gxtEntryType.equals(GxtAccountingEntryType.REMOVE)){ - - af.setOperation(GxtAccountingEntryType.REMOVE); + + af.setOperation(GxtAccountingEntryType.REMOVE); AccountingEntryRemoval rem = (AccountingEntryRemoval) accountingEntry; - String msg = (rem.getItemName()==null || rem.getItemName().isEmpty())?"":rem.getItemName()+" "; + String msg = rem.getItemName()==null || rem.getItemName().isEmpty()?"":rem.getItemName()+" "; msg+= GxtAccountingEntryType.REMOVE.getName() +" by "+user.getName(); af.setDescription(msg); } break; - + case RENAMING: - + if(gxtEntryType==null || gxtEntryType.equals(GxtAccountingEntryType.ALL) || gxtEntryType.equals(GxtAccountingEntryType.ALLWITHOUTREAD) || gxtEntryType.equals(GxtAccountingEntryType.RENAME)){ - + af.setOperation(GxtAccountingEntryType.RENAME); AccountingEntryRenaming ren = (AccountingEntryRenaming) accountingEntry; - String msg = (ren.getOldItemName()==null || ren.getOldItemName().isEmpty())?"":ren.getOldItemName()+" "; + String msg = ren.getOldItemName()==null || ren.getOldItemName().isEmpty()?"":ren.getOldItemName()+" "; msg+= GxtAccountingEntryType.RENAME.getName() +" to "+ ren.getNewItemName()+ " by "+user.getName(); af.setDescription(msg); } break; - + case ADD: - + if(gxtEntryType==null || gxtEntryType.equals(GxtAccountingEntryType.ALL) || gxtEntryType.equals(GxtAccountingEntryType.ALLWITHOUTREAD) || gxtEntryType.equals(GxtAccountingEntryType.ADD)){ - + af.setOperation(GxtAccountingEntryType.ADD); AccountingEntryAdd acc = (AccountingEntryAdd) accountingEntry; - String msg = (acc.getItemName()==null || acc.getItemName().isEmpty())?"":acc.getItemName()+" "; + String msg = acc.getItemName()==null || acc.getItemName().isEmpty()?"":acc.getItemName()+" "; msg+=GxtAccountingEntryType.ADD.getName()+ " by "+user.getName(); af.setDescription(msg); } break; - + case UPDATE: - + if(gxtEntryType==null || gxtEntryType.equals(GxtAccountingEntryType.ALL) || gxtEntryType.equals(GxtAccountingEntryType.ALLWITHOUTREAD) || gxtEntryType.equals(GxtAccountingEntryType.UPDATE)){ - + af.setOperation(GxtAccountingEntryType.UPDATE); AccountingEntryUpdate upd = (AccountingEntryUpdate) accountingEntry; - String msg = (upd.getItemName()==null || upd.getItemName().isEmpty())?"":upd.getItemName()+" "; + String msg = upd.getItemName()==null || upd.getItemName().isEmpty()?"":upd.getItemName()+" "; msg+=GxtAccountingEntryType.UPDATE.getName()+" by "+user.getName(); af.setDescription(msg); } - break; - + break; + case SHARE: - + if(gxtEntryType==null || gxtEntryType.equals(GxtAccountingEntryType.ALL) || gxtEntryType.equals(GxtAccountingEntryType.ALLWITHOUTREAD) || gxtEntryType.equals(GxtAccountingEntryType.SHARE)){ - + af.setOperation(GxtAccountingEntryType.SHARE); - + AccountingEntryShare acc = (AccountingEntryShare) accountingEntry; - + String msg = ""; if(acc.getItemName()==null || acc.getItemName().isEmpty()) msg = user.getName() + " "+GxtAccountingEntryType.SHARE.getName()+ " workspace folder"; @@ -1810,30 +1813,30 @@ public class GWTWorkspaceBuilder { if(acc.getMembers()!=null && acc.getMembers().size()>0) msg+=" with "+UserUtil.separateFullNameToCommaForPortalLogin(acc.getMembers()); - + af.setDescription(msg); } - break; - + break; + case UNSHARE: - + if(gxtEntryType==null || gxtEntryType.equals(GxtAccountingEntryType.ALL) || gxtEntryType.equals(GxtAccountingEntryType.ALLWITHOUTREAD) || gxtEntryType.equals(GxtAccountingEntryType.UNSHARE)){ - + af.setOperation(GxtAccountingEntryType.UNSHARE); AccountingEntryUnshare uns = (AccountingEntryUnshare) accountingEntry; - String msg = (uns.getItemName()==null || uns.getItemName().isEmpty())?"":uns.getItemName()+" "; + String msg = uns.getItemName()==null || uns.getItemName().isEmpty()?"":uns.getItemName()+" "; msg+=GxtAccountingEntryType.UNSHARE.getName()+" by "+user.getName(); af.setDescription(msg); } break; - + case RESTORE: - + if(gxtEntryType==null || gxtEntryType.equals(GxtAccountingEntryType.ALL) || gxtEntryType.equals(GxtAccountingEntryType.ALLWITHOUTREAD) || gxtEntryType.equals(GxtAccountingEntryType.RESTORE)){ - + af.setOperation(GxtAccountingEntryType.RESTORE); AccountingEntryRestore acc = (AccountingEntryRestore) accountingEntry; - String msg = (acc.getItemName()==null || acc.getItemName().isEmpty())?"":acc.getItemName()+" "; + String msg = acc.getItemName()==null || acc.getItemName().isEmpty()?"":acc.getItemName()+" "; msg+=GxtAccountingEntryType.RESTORE.getName()+" by "+user.getName(); af.setDescription(msg); } @@ -1843,9 +1846,9 @@ public class GWTWorkspaceBuilder { } } logger.trace("get accounting readers converting completed - returning size "+listAccFields.size()); - + return listAccFields; - + } @@ -1856,16 +1859,16 @@ public class GWTWorkspaceBuilder { * @return the list */ public List buildGXTAccountingItemFromReaders(List readers) { - + List listAccFields = new ArrayList(); - + if(readers!=null){ - + for (AccountingEntryRead accReader : readers) { - + GxtAccountingField af = new GxtAccountingField(); InfoContactModel user = buildGxtInfoContactFromPortalLogin(accReader.getUser()); - + af.setUser(user); af.setDate(toDate(accReader.getDate())); af.setOperation(GxtAccountingEntryType.READ); @@ -1875,13 +1878,13 @@ public class GWTWorkspaceBuilder { msg = GxtAccountingEntryType.READ.getName() + " by "+user.getName(); else msg = accReader.getItemName() + " " + GxtAccountingEntryType.READ.getName() + " by "+user.getName(); - + af.setDescription(msg); listAccFields.add(af); } - + } - + return listAccFields; } @@ -1894,8 +1897,8 @@ public class GWTWorkspaceBuilder { public void setUserLogged(InfoContactModel infoContactModel) { this.userLogged = infoContactModel; } - - + + /** * Gets the workspace acl from ac ls. * @@ -1904,11 +1907,11 @@ public class GWTWorkspaceBuilder { * @throws Exception the exception */ public List getWorkspaceACLFromACLs(List types) throws Exception{ - + List acls = new ArrayList(); - + for (ACLType acl : types) { - + switch (acl) { case ADMINISTRATOR: acls.add(new WorkspaceACL(acl.toString(), "Admin", false, USER_TYPE.ADMINISTRATOR, "")); @@ -1919,7 +1922,7 @@ public class GWTWorkspaceBuilder { case WRITE_OWNER: acls.add(new WorkspaceACL(acl.toString(), "Write Own", true, USER_TYPE.OTHER, "Users can update/delete only their files")); break; - + case WRITE_ALL: acls.add(new WorkspaceACL(acl.toString(), "Write Any", false, USER_TYPE.OTHER,"Any user can update/delete any file")); break; @@ -1929,15 +1932,15 @@ public class GWTWorkspaceBuilder { // break; } } - + if(acls.size()==0) throw new Exception("No ACLs rules found!"); - + logger.trace("returning acls: "+acls); - + return acls; } - + /** * Builds the gxt list trash content. * @@ -1948,13 +1951,13 @@ public class GWTWorkspaceBuilder { public List buildGXTListTrashContent(WorkspaceTrashFolder trash) throws Exception { List trashContent = trash.listTrashItems(); - + logger.info("Converting trash content, size is: "+ trashContent.size()); List listFileModel = new ArrayList(); - + try { - + for (WorkspaceTrashItem trashedItem : trashContent) try{ FileTrashedModel cti = buildGXTTrashModelItem(trashedItem); @@ -1967,13 +1970,13 @@ public class GWTWorkspaceBuilder { String error = ConstantsExplorer.SERVER_ERROR +" get Trash content. "+e.getMessage(); throw new Exception(error); } - + logger.info("Returning trash content as FileTrashedModel, size is: "+ trashContent.size()); - + return listFileModel; - + } - + /** * Builds the gxt trash model item. * @@ -1982,39 +1985,39 @@ public class GWTWorkspaceBuilder { * @throws InternalErrorException the internal error exception */ public FileTrashedModel buildGXTTrashModelItem(WorkspaceTrashItem trashedItem) throws InternalErrorException{ - + FileTrashedModel fileTrashModel = new FileTrashedModel(); fileTrashModel.setName(trashedItem.getName()); - + fileTrashModel.setIdentifier(trashedItem.getId()); //TODO - + //SETTING PARENT FileModel oldParent = new FileModel(trashedItem.getOriginalParentId(), "", true); - + fileTrashModel.setOrginalPath(trashedItem.getDeletedFrom()); fileTrashModel.setParentFileModel(oldParent); - + //SETTING DELETED BY InfoContactModel deleteUser = buildGxtInfoContactFromPortalLogin(trashedItem.getDeletedBy()); fileTrashModel.setDeleteUser(deleteUser); //SETTING MIME TYPE fileTrashModel.setType(trashedItem.getMimeType()); - + //SETTING IS DIRECTORY fileTrashModel.setIsDirectory(trashedItem.isFolder()); - + //SETTING DELETE DATE fileTrashModel.setDeleteDate(toDate(trashedItem.getDeletedTime())); - + fileTrashModel.setShared(false); logger.debug("Converting return trash item: "+fileTrashModel.getName() +" id: "+fileTrashModel.getIdentifier()); - + return fileTrashModel; - + } - + /** * Builds the gxt trash model item by id. * @@ -2025,7 +2028,7 @@ public class GWTWorkspaceBuilder { */ public FileTrashedModel buildGXTTrashModelItemById(String itemId, WorkspaceTrashFolder trash) throws InternalErrorException{ return null; - + } @@ -2036,14 +2039,14 @@ public class GWTWorkspaceBuilder { * @return the formatted html of the ACLs */ public String getFormatHtmlACLFromACLs(Map> aclOwner) { - + String html = "
"; - + logger.trace("Formatting "+aclOwner.size() +" ACL/s"); - + for (ACLType type : aclOwner.keySet()) { List listLogins = aclOwner.get(type); - + html+=""+type+": "; html+=""; for (String login : listLogins) { @@ -2057,11 +2060,11 @@ public class GWTWorkspaceBuilder { html+="
"; } html+="
"; - - + + return html; } - + /** * returns dynamically the formated size. * @@ -2070,12 +2073,12 @@ public class GWTWorkspaceBuilder { */ public static String formatFileSize(long size) { String formattedSize = null; - + double b = size; double k = size/1024.0; - double m = ((size/1024.0)/1024.0); - double g = (((size/1024.0)/1024.0)/1024.0); - double t = ((((size/1024.0)/1024.0)/1024.0)/1024.0); + double m = size/1024.0/1024.0; + double g = size/1024.0/1024.0/1024.0; + double t = size/1024.0/1024.0/1024.0/1024.0; DecimalFormat dec = new DecimalFormat("0.00"); @@ -2093,7 +2096,7 @@ public class GWTWorkspaceBuilder { return formattedSize; } - + /** * Gets the item description for type by id. * @@ -2102,16 +2105,16 @@ public class GWTWorkspaceBuilder { * @throws Exception the exception */ public String getItemDescriptionForTypeById(WorkspaceItem item) throws Exception { - + if(item==null) throw new Exception("The item is null"); - + logger.info("Getting ItemDescriptionById: "+item.getId()); - + try { switch (item.getType()) { - + case FOLDER:{ WorkspaceFolder theFolder = (WorkspaceFolder) item; return theFolder.getDescription(); @@ -2120,22 +2123,22 @@ public class GWTWorkspaceBuilder { WorkspaceSharedFolder theFolder = (WorkspaceSharedFolder) item; return theFolder.getDescription(); } - + case SMART_FOLDER:{ WorkspaceSmartFolder theFolder = (WorkspaceSmartFolder) item; return theFolder.getDescription(); } - + case TRASH_FOLDER:{ WorkspaceTrashFolder theFolder = (WorkspaceTrashFolder) item; return ""; } - + case TRASH_ITEM:{ WorkspaceTrashItem tItem = (WorkspaceTrashItem) item; return tItem.getDescription(); } - + default:{ //IS AN ITEM return item.getDescription(); } @@ -2155,11 +2158,11 @@ public class GWTWorkspaceBuilder { * @return Format HTML. A DIV HTML containing gcube item properties. If item is a GcubeItem and contains properties return HTML, null otherwise */ public String getFormatHtmlGcubeItemProperties(WorkspaceItem item) { - + Map properties = getGcubeItemProperties(item); - + if(properties!=null){ - + if(properties.size()==0){ try { logger.warn("Gcube Item Properties not found for item: "+item.getId()); @@ -2168,9 +2171,9 @@ public class GWTWorkspaceBuilder { } return null; } - + String html = "
"; - + for (String key : properties.keySet()) { String value = properties.get(key); logger.trace("Getting property: ["+key+","+properties.get(key)+"]"); @@ -2180,7 +2183,7 @@ public class GWTWorkspaceBuilder { html+="
"; } html+="
"; - + return html; } return null; @@ -2193,7 +2196,7 @@ public class GWTWorkspaceBuilder { * @return the gcube item properties */ public Map getGcubeItemProperties(WorkspaceItem item) { - + if(item instanceof GCubeItem){ GCubeItem gItem = (GCubeItem) item; try { @@ -2202,7 +2205,7 @@ public class GWTWorkspaceBuilder { HashMap properties = new HashMap(map.size()); //TO PREVENT GWT SERIALIZATION ERROR for (String key : map.keySet()) properties.put(key, map.get(key)); - + return properties; } } catch (InternalErrorException e) { 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 3eb96e6..da6d7ae 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 @@ -1782,7 +1782,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT @Override public List getListUserSharedByFolderSharedId(String folderSharedId) throws Exception{ - workspaceLogger.trace("getListUserSharedByFolderSharedId "+ folderSharedId); + workspaceLogger.debug("getListUserSharedByFolderSharedId "+ folderSharedId); try { Workspace workspace = getWorkspace(); @@ -1793,7 +1793,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT WorkspaceSharedFolder wsFolder = (WorkspaceSharedFolder) wsItem; GWTWorkspaceBuilder builder = getGWTWorkspaceBuilder(); List listPortalLogin = wsFolder.getUsers(); - workspaceLogger.trace("getListUserSharedByFolderSharedId return "+ listPortalLogin.size() + " user"); + workspaceLogger.debug("HL return "+ listPortalLogin.size() + " user/s"); if(isTestMode()) return builder.buildGxtInfoContactFromPortalLoginTestMode(listPortalLogin); @@ -1815,8 +1815,9 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT /* (non-Javadoc) * @see org.gcube.portlets.user.workspace.client.rpc.GWTWorkspaceService#getListUserSharedBySharedItem(java.lang.String) */ - @Override - public List getListUserSharedBySharedItem(String sharedItemId) throws Exception{ + + /*@Override + public List getListUserSharedBySharedItem(String sharedItemId) throws Exception{ workspaceLogger.trace("Get ListUserSharedBySharedItem "+ sharedItemId); try { @@ -1845,7 +1846,7 @@ public class GWTWorkspaceServiceImpl extends RemoteServiceServlet implements GWT workspaceLogger.error("Error in getListUserSharedByItemId ", e); throw new Exception(e.getMessage()); } - } + }*/ /* (non-Javadoc) * @see org.gcube.portlets.user.workspace.client.rpc.GWTWorkspaceService#unSharedFolderByFolderSharedId(java.lang.String) diff --git a/src/main/java/org/gcube/portlets/user/workspace/server/notifications/NotificationsUtil.java b/src/main/java/org/gcube/portlets/user/workspace/server/notifications/NotificationsUtil.java index 6cf0824..c8539eb 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/server/notifications/NotificationsUtil.java +++ b/src/main/java/org/gcube/portlets/user/workspace/server/notifications/NotificationsUtil.java @@ -1,5 +1,5 @@ /** - * + * */ package org.gcube.portlets.user.workspace.server.notifications; @@ -23,10 +23,10 @@ import org.gcube.portlets.user.workspace.server.util.WsUtil; * */ public class NotificationsUtil { - - + + protected static Logger logger = Logger.getLogger(NotificationsUtil.class); - + /** * Send a notification if an item is added or updated to sharing folder * @param httpSession @@ -35,77 +35,77 @@ public class NotificationsUtil { * @param folderDestinationItem */ public static void checkSendNotifyChangedItemToShare(HttpSession httpSession, final WorkspaceItem sourceItem, final String sourceSharedId, final WorkspaceItem folderDestinationItem, boolean isOverwrite) { - + logger.trace("checkSendNotifyAddItemToShare"); - - if(folderDestinationItem!=null){ - + + if(folderDestinationItem!=null){ + try{ if(folderDestinationItem.isShared()){ //Notify Added Item To Sharing? - + logger.trace("checkNotifyAddItemToShare source item: "+sourceItem.getName()+" sourceSharedId: "+sourceSharedId + " folder destination: "+folderDestinationItem.getName() + " folder destination shared folder id: "+folderDestinationItem.getIdSharedFolder()); - + //share condition is true if source shared folder is not null boolean shareChangeCondition = sourceSharedId==null?false:true; - + //System.out.println("shareChangeCondition add item: "+ shareChangeCondition); - + logger.trace("shareChangeCondition add item: "+shareChangeCondition); - + //if shareChangeCondition is true.. notifies added item to sharing - if(shareChangeCondition){ + if(shareChangeCondition){ Workspace workspace = WsUtil.getWorkspace(httpSession); - - List listContacts = getListUserSharedByFolderSharedId(workspace, folderDestinationItem.getIdSharedFolder()); - + + List listContacts = getListUsersSharedByFolderSharedId(workspace, folderDestinationItem.getIdSharedFolder()); + WorkspaceItem destinationSharedFolder = workspace.getItem(folderDestinationItem.getIdSharedFolder()); NotificationsProducer np = new NotificationsProducer(WsUtil.getAslSession(httpSession)); - + if(destinationSharedFolder instanceof WorkspaceSharedFolder){ //SWITCH BEETWEEN ADDED OR UPDATED if(!isOverwrite) - np.notifyAddedItemToSharing(listContacts, sourceItem, (WorkspaceSharedFolder) destinationSharedFolder); + np.notifyAddedItemToSharing(listContacts, sourceItem, (WorkspaceSharedFolder) destinationSharedFolder); else - np.notifyUpdatedItemToSharing(listContacts, sourceItem, (WorkspaceSharedFolder) destinationSharedFolder); - - + np.notifyUpdatedItemToSharing(listContacts, sourceItem, (WorkspaceSharedFolder) destinationSharedFolder); + + logger.trace("The notifies was sent correctly"); }else logger.trace("The notifies doesn't sent because "+destinationSharedFolder+ " is not instance of WorkspaceSharedFolder"); -// np.notifyAddedItemToSharing(listContacts, (WorkspaceFolder) folderDestinationItem); - } +// np.notifyAddedItemToSharing(listContacts, (WorkspaceFolder) folderDestinationItem); + } } else logger.trace("folder destination is not shared"); - + }catch (Exception e) { logger.error("An error occurred in checkSendNotifyAddItemToShare ",e); } }else - logger.warn("The notifies is failure in checkSendNotifyAddItemToShare because folder destination item is null"); + logger.warn("The notifies is failure in checkSendNotifyAddItemToShare because folder destination item is null"); } - - + + /** - * + * * @param workspace * @param idSharedFolder * @return * @throws Exception */ - public static List getListUserSharedByFolderSharedId(Workspace workspace, String idSharedFolder) throws Exception { - - logger.trace("getListUserSharedByFolderSharedId "+ idSharedFolder); + public static List getListUsersSharedByFolderSharedId(Workspace workspace, String idSharedFolder) throws Exception { + + logger.trace("getListUsersSharedByFolderSharedId "+ idSharedFolder); try { WorkspaceItem wsItem = workspace.getItem(idSharedFolder); - + if(isASharedFolder(wsItem)){ - + WorkspaceSharedFolder wsFolder = (WorkspaceSharedFolder) wsItem; GWTWorkspaceBuilder builder = new GWTWorkspaceBuilder(); @@ -115,16 +115,16 @@ public class NotificationsUtil { logger.trace("getListUserSharedByFolderSharedId return "+ listPortalLogin.size() + " user"); return builder.buildGxtInfoContactsFromPortalLogins(listPortalLogin); - + } else{ logger.trace("the item with id: "+idSharedFolder+ " is not "+WorkspaceItemType.SHARED_FOLDER); - + //DEBUG //System.out.println("the item with id: "+folderSharedId+ " is not "+WorkspaceItemType.SHARED_FOLDER); } return new ArrayList(); - + } catch (Exception e) { logger.error("Error in getListUserSharedByItemId ", e); throw new Exception(e.getMessage()); @@ -133,9 +133,9 @@ public class NotificationsUtil { - + /** - * + * * @param httpSession * @param sourceItemIsShared * @param oldItemName @@ -143,51 +143,51 @@ public class NotificationsUtil { * @param sourceFolderSharedId */ public static void checkSendNotifyRemoveItemToShare(HttpSession httpSession, final boolean sourceItemIsShared, final String oldItemName, String oldItemId, final String sourceFolderSharedId) { - - + + logger.trace("checkNotifyRemoveItemToShare:"); - + try{ - - if(!sourceItemIsShared){ - + + if(!sourceItemIsShared){ + logger.trace("checkSendNotifyRemoveItemToShare returned, source item is not shared"); return; } String idSharedFolder = sourceFolderSharedId!=null?sourceFolderSharedId:""; - + // System.out.println("shareChangeCondition remove item: "+ shareChangeCondition); - + boolean isRootFolderShared = checkIsRootFolderShared(oldItemId, idSharedFolder); logger.trace("isRootFolderShared is: "+ isRootFolderShared); - - + + /* if(isRootFolderShared){ logger.trace("Notification doesn't sent because the event is on root shared folder"); return; }*/ - - + + boolean isSharedFolder = isASharedFolderForId(httpSession,idSharedFolder); - + if(isSharedFolder){ - + logger.trace("idSharedFolder is: "+ idSharedFolder +" is shared folder: "+isSharedFolder); - + Workspace workspace = WsUtil.getWorkspace(httpSession); - + //get contacts - List listContacts = getListUserSharedByFolderSharedId(workspace, idSharedFolder); - + List listContacts = getListUsersSharedByFolderSharedId(workspace, idSharedFolder); + WorkspaceItem sourceSharedFolder = workspace.getItem(idSharedFolder); - + //System.out.println(" name sourceSharedFolder: "+ sourceSharedFolder.getName()); - + NotificationsProducer np = new NotificationsProducer(WsUtil.getAslSession(httpSession)); - + //Notify Removed Item To Sharing? if(!isRootFolderShared){ if(sourceSharedFolder instanceof WorkspaceSharedFolder){ @@ -196,21 +196,21 @@ public class NotificationsUtil { } else logger.trace("The notifies doesn't sent because "+sourceSharedFolder+ " is not instance of WorkspaceSharedFolder"); - + }else{ //Case removed shared folder np.notifySharedFolderDeleted(listContacts, oldItemName); } } - + }catch (Exception e) { logger.error("An error occurred in checkSendNotifyRemoveItemToShare ",e); } } - + /** - * + * * @param wsItem * @return */ @@ -219,52 +219,52 @@ public class NotificationsUtil { return wsItem.getType().equals(WorkspaceItemType.SHARED_FOLDER); return false; } - + /** - * + * * @param wsItem * @return */ public static boolean isASharedFolderForId(HttpSession httpSession, String itemId){ - + if(itemId==null || itemId.isEmpty()) return false; - + try { - + Workspace workspace = WsUtil.getWorkspace(httpSession); WorkspaceItem wsItem = workspace.getItem(itemId); - + if(wsItem!=null) return wsItem.getType().equals(WorkspaceItemType.SHARED_FOLDER); return false; - + } catch (Exception e) { logger.error("An errror occurred in isASharedFolderForId", e); return false; } } - + /** - * + * * @param itemId * @param rootFolderSharedId * @return */ public static boolean checkIsRootFolderShared(String itemId, String rootFolderSharedId) { - + logger.trace("checkIsRootFolderShared between [itemid: "+itemId +", rootFolderSharedId: "+rootFolderSharedId+"]"); if(itemId==null) return false; - + if(rootFolderSharedId==null) return false; - + if(itemId.compareTo(rootFolderSharedId)==0) return true; - + return false; } } diff --git a/src/main/java/org/gcube/portlets/user/workspace/server/resolver/UriResolverReaderParameterForResolverIndex.java b/src/main/java/org/gcube/portlets/user/workspace/server/resolver/UriResolverReaderParameterForResolverIndex.java index 5ebeb8e..fae9063 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/server/resolver/UriResolverReaderParameterForResolverIndex.java +++ b/src/main/java/org/gcube/portlets/user/workspace/server/resolver/UriResolverReaderParameterForResolverIndex.java @@ -1,5 +1,5 @@ /** - * + * */ package org.gcube.portlets.user.workspace.server.resolver; @@ -29,12 +29,12 @@ import org.gcube.resources.discovery.client.queries.impl.XQuery; * @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it * Jan 12, 2016 */ -public class UriResolverReaderParameterForResolverIndex { - +public class UriResolverReaderParameterForResolverIndex { + protected static final String CONTENT_TYPE_PARAMETER = "contentType_parameter"; protected static final String FILE_NAME_PARAMETER = "fileName_parameter"; protected static final String SMP_ID_PARAMETER = "SMP_ID_parameter"; - + //Base Address private String baseUri = ""; //Query URL parameter @@ -44,15 +44,15 @@ public class UriResolverReaderParameterForResolverIndex { private String query = ""; private boolean isAvailable = false; public static Logger logger = Logger.getLogger(UriResolverReaderParameterForResolverIndex.class); - + /** * The Enum RESOLVER_TYPE. * * @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it * Jan 12, 2016 */ - public static enum RESOLVER_TYPE {SMP_URI, SMP_ID}; - + public static enum RESOLVER_TYPE {SMP_URI, SMP_ID}; + /** * Instantiates a new uri resolver reader parameter for resolver index. * @@ -61,43 +61,50 @@ public class UriResolverReaderParameterForResolverIndex { * @throws Exception the exception */ public UriResolverReaderParameterForResolverIndex(String scope, RESOLVER_TYPE resolverType) throws Exception { - - logger.trace("UriResolverReaderParameter is istancing with scope: "+scope); - ScopeUtilFilter scopeUtil = new ScopeUtilFilter(scope,true); - ScopeProvider.instance.set(scopeUtil.getScopeRoot()); - XQuery query = queryFor(ServiceEndpoint.class); - query.addCondition("$resource/Profile/Name/text() eq 'HTTP-URI-Resolver'").setResult("$resource/Profile/AccessPoint"); - - DiscoveryClient client = clientFor(AccessPoint.class); - List endpoints = client.submit(query); - - if (endpoints.size() == 0) - throw new Exception("No Resolver available"); - - //THE FIRST ACCESS POINT (endpoints.get(0)) IS SMP-URI, THE SECOND (endpoints.get(1)) IS SMP-ID - int useResolverIndex; - - switch(resolverType){ - case SMP_ID: - useResolverIndex = 1; - break; - case SMP_URI: - useResolverIndex = 0; - break; - default: - useResolverIndex = 1; + + try{ + logger.trace("UriResolverReaderParameter is istancing with scope: "+scope); + ScopeUtilFilter scopeUtil = new ScopeUtilFilter(scope,true); + ScopeProvider.instance.set(scopeUtil.getScopeRoot()); + XQuery query = queryFor(ServiceEndpoint.class); + query.addCondition("$resource/Profile/Name/text() eq 'HTTP-URI-Resolver'").setResult("$resource/Profile/AccessPoint"); + + DiscoveryClient client = clientFor(AccessPoint.class); + List endpoints = client.submit(query); + + if (endpoints.size() == 0) + throw new Exception("No Resolver available"); + + //THE FIRST ACCESS POINT (endpoints.get(0)) IS SMP-URI, THE SECOND (endpoints.get(1)) IS SMP-ID + int useResolverIndex; + + switch(resolverType){ + case SMP_ID: + useResolverIndex = 1; + break; + case SMP_URI: + useResolverIndex = 0; + break; + default: + useResolverIndex = 1; + } + + AccessPoint ap2 = endpoints.get(useResolverIndex); + baseUri = ap2!=null?endpoints.get(useResolverIndex).address():""; + if(ap2!=null){ + storageIDParameter = ap2.propertyMap()!=null?ap2.propertyMap().get(SMP_ID_PARAMETER).value():""; + fileNameParameter = ap2.propertyMap()!=null?ap2.propertyMap().get(FILE_NAME_PARAMETER).value():""; + contentTypeParameter = ap2.propertyMap()!=null?ap2.propertyMap().get(CONTENT_TYPE_PARAMETER).value():""; + } + isAvailable = true; + }catch(Exception e){ + + }finally{ + ScopeProvider.instance.reset(); } - - AccessPoint ap2 = endpoints.get(useResolverIndex); - baseUri = ap2!=null?endpoints.get(useResolverIndex).address():""; - if(ap2!=null){ - storageIDParameter = ap2.propertyMap()!=null?ap2.propertyMap().get(SMP_ID_PARAMETER).value():""; - fileNameParameter = ap2.propertyMap()!=null?ap2.propertyMap().get(FILE_NAME_PARAMETER).value():""; - contentTypeParameter = ap2.propertyMap()!=null?ap2.propertyMap().get(CONTENT_TYPE_PARAMETER).value():""; - } - isAvailable = true; + } - + /** * Resolve - open stream with http get method. * @@ -111,16 +118,16 @@ public class UriResolverReaderParameterForResolverIndex { String query = resolveAsUriRequest(smp, fileName, contentType, true); URL url = new URL(query); - HttpURLConnection connection = (HttpURLConnection) url.openConnection(); - connection.setDoOutput(true); - connection.setInstanceFollowRedirects(false); - connection.setRequestMethod("GET"); - connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); + HttpURLConnection connection = (HttpURLConnection) url.openConnection(); + connection.setDoOutput(true); + connection.setInstanceFollowRedirects(false); + connection.setRequestMethod("GET"); + connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); connection.setRequestProperty("charset", "utf-8"); connection.connect(); return connection.getInputStream(); } - + /** * Resolve as uri request. @@ -134,16 +141,16 @@ public class UriResolverReaderParameterForResolverIndex { * @throws Exception the exception */ public String resolveAsUriRequest(String storageID, String fileName, String contentType, boolean encodeParams) throws Exception{ - + if(storageID==null || storageID.isEmpty()) throw new Exception("storage ID is null or empty"); if(!encodeParams){ //ENCODE URI query = storageIDParameter+"="+storageID; - + if(fileName!=null && !fileName.isEmpty()) query+="&"+fileNameParameter+"="+fileName; - + if(contentType!=null && !contentType.isEmpty()) query+="&"+contentTypeParameter+"="+contentType; } @@ -155,8 +162,8 @@ public class UriResolverReaderParameterForResolverIndex { logger.trace("resolve url request: "+uriRequest); return uriRequest; } - - + + /** * Resolve as storage id request. @@ -167,7 +174,7 @@ public class UriResolverReaderParameterForResolverIndex { * @throws Exception the exception */ public String resolveAsStorageIdRequest(String storageID, boolean encodeParams) throws Exception{ - + if(storageID==null || storageID.isEmpty()) throw new Exception("storage ID is null or empty"); @@ -175,10 +182,10 @@ public class UriResolverReaderParameterForResolverIndex { query = storageID; else query = UrlEncoderUtil.encodeQueryValue(storageID); - + if(baseUri.endsWith("/id")) baseUri = baseUri.substring(0, baseUri.length()-3); - + String uriRequest = baseUri+"/"+query; logger.trace("resolve storageID request: "+uriRequest); return uriRequest; @@ -195,24 +202,24 @@ public class UriResolverReaderParameterForResolverIndex { * @throws Exception the exception */ public Map getHashParameters(String storageID, String fileName, String contentType) throws Exception{ - + Map hashParameters = new HashMap(); - + if(storageID==null || storageID.isEmpty()) throw new Exception("smp url is null or empty"); - + hashParameters.put(storageIDParameter, storageID); - + if(fileName!=null && !fileName.isEmpty()) hashParameters.put(fileNameParameter, fileName); - + if(contentType!=null && !contentType.isEmpty()) - hashParameters.put(contentTypeParameter, contentType); + hashParameters.put(contentTypeParameter, contentType); return hashParameters; } - - + + /** * Checks if is available. * @@ -230,7 +237,7 @@ public class UriResolverReaderParameterForResolverIndex { public String getBaseUri() { return baseUri; } - + /** * Gets the storage id parameter. * @@ -257,7 +264,7 @@ public class UriResolverReaderParameterForResolverIndex { public String getContentTypeParameter() { return contentTypeParameter; } - + /** * Gets the query. * @@ -267,7 +274,7 @@ public class UriResolverReaderParameterForResolverIndex { return query; } - + /* (non-Javadoc) * @see java.lang.Object#toString() */ diff --git a/src/main/java/org/gcube/portlets/user/workspace/server/shortener/UrlShortener.java b/src/main/java/org/gcube/portlets/user/workspace/server/shortener/UrlShortener.java index e17b9e1..1dc625b 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/server/shortener/UrlShortener.java +++ b/src/main/java/org/gcube/portlets/user/workspace/server/shortener/UrlShortener.java @@ -115,6 +115,8 @@ public final class UrlShortener { isAvailable = false; logger.error("an error occurred in reading RR: ", e); throw new Exception(NO_HTTP_URL_SHORTENER_AVAILABLE); + }finally{ + ScopeProvider.instance.reset(); } } diff --git a/src/main/java/org/gcube/portlets/user/workspace/server/util/WsUtil.java b/src/main/java/org/gcube/portlets/user/workspace/server/util/WsUtil.java index 92e6b77..e8b95bf 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/server/util/WsUtil.java +++ b/src/main/java/org/gcube/portlets/user/workspace/server/util/WsUtil.java @@ -161,7 +161,6 @@ public class WsUtil { public static Workspace getWorkspace(final HttpSession httpSession) throws InternalErrorException, HomeNotFoundException, WorkspaceFolderNotFoundException { - logger.trace("Get Workspace"); final ASLSession session = getAslSession(httpSession); logger.trace("ASLSession scope: "+session.getScope() + " username: "+session.getUsername()); @@ -170,82 +169,11 @@ public class WsUtil { logger.trace("Scope provider instancied"); Workspace workspace = HomeLibrary.getUserWorkspace(session.getUsername()); - - /* - if (session.getAttribute(METADATACONVERTER_ATTRIBUTE) == null){ - - logger.trace("Initializing the Metadata converter"); - - Thread mcLoader = new Thread(new Runnable(){ - - public void run() { - try { - MetadataConverter mc = new MetadataConverter(logger); - mc.setup(session); - session.setAttribute(METADATACONVERTER_ATTRIBUTE, mc); - }catch (Exception e) { - logger.error("Error initializing the Metadata Converter: "+e.getMessage()); - } - } - - }); - - mcLoader.start(); - } - if (session.getAttribute(WORKSPACE_EVENT_COLLECTOR_ATTRIBUTE) == null){ - - - logger.trace("Initializing the event collector"); - - //we prepare the event collector - WorkspaceEventCollector eventCollector = new WorkspaceEventCollector(); - workspace.addWorkspaceListener(eventCollector); - session.setAttribute(WORKSPACE_EVENT_COLLECTOR_ATTRIBUTE, eventCollector); - } - */ - - /* - if (session.getAttribute(WORKSPACEBUILDER_ATTRIBUTE) == null) - { - logger.trace("Initializing the workspace area builder"); - - GWTWorkspaceBuilder builder = new GWTWorkspaceBuilder(); - - //ADDED 03/09/2013 - builder.setUserLogged(new InfoContactModel(session.getUsername(), session.getUsername(), session.getUserFullName(), false)); - - session.setAttribute(WORKSPACEBUILDER_ATTRIBUTE, builder); - }*/ - return workspace; + } - -// public static MetadataConverter getMetadataConverter(Logger logger, HttpSession httpSession) -// { -// MetadataConverter mc = (MetadataConverter) httpSession.getAttribute(METADATACONVERTER_ATTRIBUTE); -// -// if (mc==null) -// { -// -// mc = new MetadataConverter(logger); -// ASLSession session = getAslSession(httpSession); -// mc.setup(session); -// session.setAttribute(METADATACONVERTER_ATTRIBUTE, mc); -// } -// -// mc.isReady(); -// -// return mc; -// } - -// public static WorkspaceEventCollector getEventCollector(HttpSession httpSession) -// { -// ASLSession session = getAslSession(httpSession); -// return (WorkspaceEventCollector) session.getAttribute(WsUtil.WORKSPACE_EVENT_COLLECTOR_ATTRIBUTE); -// } - public static GWTWorkspaceBuilder getGWTWorkspaceBuilder(HttpSession httpSession) { ASLSession session = getAslSession(httpSession); diff --git a/src/test/java/org/gcube/portlets/user/workspace/DataMinerTest.java b/src/test/java/org/gcube/portlets/user/workspace/DataMinerTest.java new file mode 100644 index 0000000..f526186 --- /dev/null +++ b/src/test/java/org/gcube/portlets/user/workspace/DataMinerTest.java @@ -0,0 +1,35 @@ +/** + * + */ +package org.gcube.portlets.user.workspace; + +import java.io.IOException; +import java.net.MalformedURLException; +import java.net.URL; + + +/** + * + * @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it + * May 9, 2016 + */ +public class DataMinerTest { + + public static void main(String[] args) { + + String myToken = "4620e6d0-2313-4f48-9d54-eb3efd01a810"; + try { + + URL url = new URL("http://dataminer1-d-d4s.d4science.org/wps/WebProcessingService?request=Execute&service=WPS&Version=1.0.0&gcube-token="+myToken+"&lang=en-US&Identifier=org.gcube.dataanalysis.wps.statisticalmanager.synchserver.mappedclasses.transducerers.BIOCLIMATE_HCAF&DataInputs=HCAF_Table_List=http://goo.gl/LTqufC|http://goo.gl/LTqufC;HCAF_Table_Names=h1|h2"); + url.openConnection(); + } + catch (MalformedURLException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + catch (IOException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } +}