Addec check for Root and First level from root
git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/trunk/portlets/user/workspace-explorer-app@131529 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
a7c932d362
commit
c6f0c0e78a
|
@ -375,16 +375,30 @@ public class WorkspaceExplorerAppServiceImpl extends RemoteServiceServlet implem
|
|||
Workspace workspace = WsUtil.getWorkspace(this.getThreadLocalRequest().getSession());
|
||||
WorkspaceItem wsItem = workspace.getItem(itemIdentifier);
|
||||
logger.trace("workspace retrieve item name: "+wsItem.getName());
|
||||
List<WorkspaceItem> parents = workspace.getParentsById(itemIdentifier);
|
||||
List<WorkspaceItem> parents = null;
|
||||
try{
|
||||
parents = workspace.getParentsById(itemIdentifier);
|
||||
}catch(Exception e){
|
||||
logger.error("Error on getting list of parents from HL for id: "+itemIdentifier, e);
|
||||
parents = new ArrayList<WorkspaceItem>();
|
||||
}
|
||||
|
||||
if(parents==null) //avoiding null
|
||||
parents = new ArrayList<WorkspaceItem>();
|
||||
|
||||
logger.trace("parents size: "+parents.size());
|
||||
Item[] arrayParents;
|
||||
|
||||
parentLimit = parentLimit!=null?parentLimit:"";
|
||||
|
||||
switch (parents.size()) {
|
||||
case 0: // itemIdentifier is ROOT
|
||||
logger.debug("itemIdentifier isRoot...");
|
||||
if (includeItemAsParent) { //ADDIND ROOT
|
||||
case 0: //an error?
|
||||
logger.debug("There was an error? parents are 0");
|
||||
return new ArrayList<Item>(1);
|
||||
case 1: //itemIdentifier is ROOT - Parents include the ROOT
|
||||
case 2: //itemIdentifier is first level from ROOT
|
||||
logger.debug("itemIdentifier isRoot or a Folder of first level: ");
|
||||
if (includeItemAsParent) { //ADDIND ROOT OR FOLDER OF FIRST LEVEL
|
||||
WorkspaceFolder wsFolder =(WorkspaceFolder) workspace.getItem(itemIdentifier);
|
||||
Item root = ItemBuilder.buildFolderForBreadcrumbs(wsFolder, null);
|
||||
List<Item> listParents = new ArrayList<Item>(1);
|
||||
|
@ -396,25 +410,26 @@ public class WorkspaceExplorerAppServiceImpl extends RemoteServiceServlet implem
|
|||
return new ArrayList<Item>(); // empty list
|
||||
}
|
||||
|
||||
case 1: //itemIdentifier is first level from root
|
||||
/*case 2: //itemIdentifier is first level from root
|
||||
logger.debug("itemIdentifier is first level...");
|
||||
List<Item> listParents = new ArrayList<Item>();
|
||||
WorkspaceFolder wsRootFolder = (WorkspaceFolder) parents.get(0); //isRoot
|
||||
Item root = ItemBuilder.buildFolderForBreadcrumbs(wsRootFolder, null);
|
||||
Item parent = null;
|
||||
if(includeItemAsParent){
|
||||
WorkspaceFolder wsFolder1 =(WorkspaceFolder) workspace.getItem(itemIdentifier); //root
|
||||
WorkspaceFolder wsFolder1 =(WorkspaceFolder) workspace.getItem(itemIdentifier); //folder of first level
|
||||
parent = ItemBuilder.buildFolderForBreadcrumbs(wsFolder1, null);
|
||||
}
|
||||
|
||||
if(root.getId().compareTo(parentLimit)!=0)
|
||||
listParents.add(root);
|
||||
// WorkspaceFolder wsRootFolder = (WorkspaceFolder) parents.get(0); //isRoot
|
||||
// Item root = ItemBuilder.buildFolderForBreadcrumbs(wsRootFolder, null);
|
||||
//
|
||||
// if(root.getId().compareTo(parentLimit)!=0)
|
||||
// listParents.add(root);
|
||||
|
||||
if(parent!=null)
|
||||
listParents.add(parent);
|
||||
// workspaceLogger.trace("returning: "+listParents.toString());
|
||||
return listParents;
|
||||
|
||||
*/
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue