diff --git a/.classpath b/.classpath
index d1227cc..75a174a 100644
--- a/.classpath
+++ b/.classpath
@@ -13,15 +13,15 @@
+
-
-
+
diff --git a/.settings/org.eclipse.core.resources.prefs b/.settings/org.eclipse.core.resources.prefs
index 29abf99..839d647 100644
--- a/.settings/org.eclipse.core.resources.prefs
+++ b/.settings/org.eclipse.core.resources.prefs
@@ -2,5 +2,4 @@ eclipse.preferences.version=1
encoding//src/main/java=UTF-8
encoding//src/main/resources=UTF-8
encoding//src/test/java=UTF-8
-encoding//src/test/resources=UTF-8
encoding/=UTF-8
diff --git a/src/main/java/org/gcube/portlets/user/workspaceexplorerapp/server/DownloadWorkspaceExplorerServlet.java b/src/main/java/org/gcube/portlets/user/workspaceexplorerapp/server/DownloadWorkspaceExplorerServlet.java
index 0fa25b1..f89dcbb 100644
--- a/src/main/java/org/gcube/portlets/user/workspaceexplorerapp/server/DownloadWorkspaceExplorerServlet.java
+++ b/src/main/java/org/gcube/portlets/user/workspaceexplorerapp/server/DownloadWorkspaceExplorerServlet.java
@@ -135,7 +135,7 @@ public class DownloadWorkspaceExplorerServlet extends HttpServlet{
// }
//SINGLE DONWLOAD - DOWNLOAD WORKSPACE ITEM
- item = wa.getItem(ids.get(0));
+ item = wa.getItemForExplorer(ids.get(0), false, false, false);
if(isValidItem){ //ADDED 25/06/2013 - THIS CODE RETURN A SC_ACCEPT IS ITEM EXIST
String message = HttpServletResponse.SC_ACCEPTED+ ": The resource is available";
sendMessageResourceAvailable(resp, message);
@@ -453,7 +453,7 @@ public class DownloadWorkspaceExplorerServlet extends HttpServlet{
* @param workspaceItemIds the workspace item ids
* @return the list
*/
- private List toWorkspaceItems(Workspace ws, List workspaceItemIds){
+ /*private List toWorkspaceItems(Workspace ws, List workspaceItemIds){
if(workspaceItemIds==null)
return null;
@@ -468,7 +468,7 @@ public class DownloadWorkspaceExplorerServlet extends HttpServlet{
}
}
return listWI;
- }
+ }*/
/**
* Method to manage HttpServletResponse content length also to big data.
diff --git a/src/main/java/org/gcube/portlets/user/workspaceexplorerapp/server/ItemComparator.java b/src/main/java/org/gcube/portlets/user/workspaceexplorerapp/server/ItemComparator.java
index 945d812..f29d95b 100644
--- a/src/main/java/org/gcube/portlets/user/workspaceexplorerapp/server/ItemComparator.java
+++ b/src/main/java/org/gcube/portlets/user/workspaceexplorerapp/server/ItemComparator.java
@@ -40,7 +40,6 @@ public class ItemComparator implements Comparator- {
}
private boolean isSpecialFolder(Item item) {
-// return item.getName().equals(WorkspaceExplorerConstants.VRE_FOLDERS_LABEL) && item.getParent()!=null && item.getParent().isRoot();
return item.getName().equals(WorkspaceExplorerAppConstants.VRE_FOLDERS_LABEL) && item.isSpecialFolder();
}
}
diff --git a/src/main/java/org/gcube/portlets/user/workspaceexplorerapp/server/WorkspaceExplorerAppServiceImpl.java b/src/main/java/org/gcube/portlets/user/workspaceexplorerapp/server/WorkspaceExplorerAppServiceImpl.java
index c7706f1..0401817 100644
--- a/src/main/java/org/gcube/portlets/user/workspaceexplorerapp/server/WorkspaceExplorerAppServiceImpl.java
+++ b/src/main/java/org/gcube/portlets/user/workspaceexplorerapp/server/WorkspaceExplorerAppServiceImpl.java
@@ -141,7 +141,7 @@ public class WorkspaceExplorerAppServiceImpl extends RemoteServiceServlet implem
throw new Exception("Item id is null");
workspace = getWorkspace();
- workspaceItem = workspace.getItem(item.getId());
+ workspaceItem = workspace.getItemForExplorer(item.getId(), false, false, false);
} catch (Exception e) {
logger.error("Error during item retrieving", e);
@@ -232,122 +232,6 @@ public class WorkspaceExplorerAppServiceImpl extends RemoteServiceServlet implem
}
}
- /**
- * Gets Breadcrumbs (the list of parents) by item identifier.
- *
- * @param itemIdentifier the item identifier
- * @param includeItemAsParent - if parameter is true and item passed in input is a folder, the folder is included in path returned as last parent
- * @return the list parents by item identifier
- * @throws Exception the exception
- */
- //@Override
- /*public List
- getBreadcrumbsByItemIdentifier(String itemIdentifier, boolean includeItemAsParent) throws Exception {
- logger.trace("ListParents By Item Identifier "+ itemIdentifier);
- try {
-
- Workspace workspace = getWorkspace();
- WorkspaceItem wsItem = workspace.getItem(itemIdentifier);
- logger.trace("workspace retrieve item name: "+wsItem.getName());
- List extends WorkspaceItem> parents = workspace.getParentsById(itemIdentifier);
- logger.trace("parents size: "+parents.size());
- Item[] arrayParents;
-
-
- switch (parents.size()) {
- case 0: // itemIdentifier is ROOT
- logger.trace("itemIdentifier isRoot...");
- if (includeItemAsParent) { //ADDING ROOT
- org.gcube.common.storagehubwrapper.shared.tohl.WorkspaceFolder wsFolder =
- (org.gcube.common.storagehubwrapper.shared.tohl.WorkspaceFolder) wsItem;
- Item root = ItemBuilder.buildFolderForBreadcrumbs(wsFolder, null);
- List
- listParents = new ArrayList
- (1);
- listParents.add(root);
- //workspaceLogger.trace("returning: "+listParents.toString());
- return listParents;
- }
- else{
- logger.trace("returning empty list");
- return new ArrayList
- (); // empty list
- }
-
- case 1: //itemIdentifier is first level from root
- logger.trace("itemIdentifier is first level...");
- List
- listParents = new ArrayList
- ();
- org.gcube.common.storagehubwrapper.shared.tohl.WorkspaceFolder wsRootFolder = (org.gcube.common.storagehubwrapper.shared.tohl.WorkspaceFolder) parents.get(0); //isRoot
- Item root = ItemBuilder.buildFolderForBreadcrumbs(wsRootFolder, null);
- Item parent = null;
- if(includeItemAsParent){
- org.gcube.common.storagehubwrapper.shared.tohl.WorkspaceFolder wsFolder1 =
- (org.gcube.common.storagehubwrapper.shared.tohl.WorkspaceFolder) workspace.getItem(itemIdentifier); //root
- parent = ItemBuilder.buildFolderForBreadcrumbs(wsFolder1, null);
- }
- listParents.add(root);
- if(parent!=null)
- listParents.add(parent);
- // workspaceLogger.trace("returning: "+listParents.toString());
- return listParents;
-
- default:
- break;
- }
-
- WorkspaceItem lastItem = parents.get(parents.size()-1);
-
- //CONVERTING LAST ELEMENT IF NECESSARY
- logger.trace("converting last element..");
- if(includeItemAsParent && lastItem.isFolder()){ //FIX BUG #298
- arrayParents = new Item[parents.size()];
- logger.debug("including last item into path: "+lastItem.getName());
- arrayParents[parents.size()-1] = ItemBuilder.buildFolderForBreadcrumbs((WorkspaceFolder) lastItem, null);
- }else
- arrayParents = new Item[parents.size()-1];
-
- // HANDLE MY_SPECIAL_FOLDER TO AVOID COMPLETE PATH WORKSPACE/MY_SPECIAL_FOLDER BUT RETURNING ONLY /MY_SPECIAL_FOLDER
-
- if(wsItem.isFolder()){
- if(ItemBuilder.isSpecialFolder((WorkspaceFolder) wsItem, lastItem.isRoot())){
- return new ArrayList
- (Arrays.asList(arrayParents));
- }
- }
-
- //CONVERTING PATH
- logger.trace("converting path from second-last..");
- for (int i = parents.size()-2; i >= 0; i--) {
- WorkspaceFolder wsParentFolder = (WorkspaceFolder) parents.get(i);
- arrayParents[i] = ItemBuilder.buildFolderForBreadcrumbs(wsParentFolder, null);
- if(arrayParents[i].isSpecialFolder()){ //SKIP HOME PARENT FOR MY_SPECIAL_FOLDER
- logger.info("arrayParents index "+i+" is special folder, exit");
- break;
- }
- }
-
- //SET PARENTS
- logger.trace("setting parents..");
- for(int i=0; i breadcrumbs = new ArrayList
- (arrayParents.length-1);
- for (int i=1; i(Arrays.asList(arrayParents));
- }
-
- } catch (Exception e) {
- logger.error("Error in get List Parents By Item Identifier ", e);
- throw new Exception("Sorry, an error occurred during path retrieving!");
- }
- }*/
-
/**
* Gets the parents by item identifier to limit.
* when limit is reached parents are null
@@ -363,8 +247,9 @@ public class WorkspaceExplorerAppServiceImpl extends RemoteServiceServlet implem
try {
Workspace workspace = getWorkspace();
- WorkspaceItem wsItem = workspace.getItem(itemIdentifier);
- logger.trace("workspace retrieve item name: "+wsItem.getName());
+ WorkspaceItem wsItem = workspace.getItemForExplorer(itemIdentifier,false,false,false);
+ logger.info("\n\nworkspace retrieve item name: "+wsItem.getName());
+ logger.info("\n\n");
List extends WorkspaceItem> parents = null;
try{
parents = workspace.getParentsById(itemIdentifier);
@@ -378,7 +263,8 @@ public class WorkspaceExplorerAppServiceImpl extends RemoteServiceServlet implem
if(logger.isDebugEnabled()) {
for (WorkspaceItem workspaceItem : parents) {
- logger.debug("the parent is: "+workspaceItem.getName());
+ logger.info("the parent is: "+workspaceItem.getName());
+ logger.info("\n\n");
}
}
@@ -386,6 +272,8 @@ public class WorkspaceExplorerAppServiceImpl extends RemoteServiceServlet implem
List
- arrayParents = new ArrayList
- ();
parentLimit = parentLimit!=null?parentLimit:"";
+ logger.info("parent size returned by SHUB is: "+parents.size());
+
switch (parents.size()) {
case 0: // itemIdentifier is ROOT
logger.trace("itemIdentifier isRoot...");
@@ -519,7 +407,7 @@ public class WorkspaceExplorerAppServiceImpl extends RemoteServiceServlet implem
throw new Exception("Sorry, the itemId is null. The public link for empty item is unavailable");
Workspace workspace = getWorkspace();
- WorkspaceItem wsItem = workspace.getItem(itemId);
+ WorkspaceItem wsItem = workspace.getItemForExplorer(itemId,false,false,false);
if(wsItem==null)
throw new Exception("Sorry, the workspace item is null. The public link for empty item is unavailable");
diff --git a/src/main/java/org/gcube/portlets/user/workspaceexplorerapp/server/workspace/ItemBuilder.java b/src/main/java/org/gcube/portlets/user/workspaceexplorerapp/server/workspace/ItemBuilder.java
index c913759..896dd5d 100644
--- a/src/main/java/org/gcube/portlets/user/workspaceexplorerapp/server/workspace/ItemBuilder.java
+++ b/src/main/java/org/gcube/portlets/user/workspaceexplorerapp/server/workspace/ItemBuilder.java
@@ -213,7 +213,6 @@ public class ItemBuilder {
switch (item.getType()) {
case SHARED_FOLDER:
case FOLDER: {
-// if (item.isRoot()) return ItemType.ROOT;
return ItemType.FOLDER;
}
case FILE_ITEM: