added get size

git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/widgets/workspace-explorer@167708 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
Massimiliano Assante 2018-05-23 14:34:06 +00:00
parent 0977484ebc
commit fef8b056a3
4 changed files with 27 additions and 29 deletions

View File

@ -72,6 +72,10 @@ public class Util {
return null;
if (item.isFolder())
return GWTIconsManager.getIconFolder(item.isSharedFolder());
if (item.getType() == ItemType.EXTERNAL_URL)
return GWTIconsManager.getIconTypeLink();
if (item.getType() == ItemType.XML)
return GWTIconsManager.getXMLTypeLink();
return GWTIconsManager.getIconFile(item.getName());
}

View File

@ -13,6 +13,7 @@ import java.util.Map.Entry;
import org.gcube.common.storagehub.client.plugins.AbstractPlugin;
import org.gcube.common.storagehub.client.proxies.ItemManagerClient;
import org.gcube.common.storagehub.model.items.AbstractFileItem;
import org.gcube.common.storagehub.model.items.ExternalURL;
import org.gcube.common.storagehub.model.items.FolderItem;
import org.gcube.common.storagehub.model.items.Item;
import org.gcube.common.storagehub.model.items.SharedFolder;
@ -195,7 +196,7 @@ public class ItemBuilder {
else if (item instanceof FolderItem) {
return getFolderItemType(item);
}
_log.warn("\n\n\n**** Item Type non found: ");
_log.warn("Item Type non found: " + item.toString());
return ItemType.UNKNOWN_TYPE;
}
@ -205,6 +206,12 @@ public class ItemBuilder {
* @return the item type based on the extension of the file
*/
private static ItemType getFileIconImageType(Item item) {
if (item instanceof ExternalURL)
return ItemType.EXTERNAL_URL;
AbstractFileItem aItem = (AbstractFileItem) item;
if (aItem.getContent().getMimeType().compareTo("application/xml") == 0) {
return ItemType.XML;
}
String[] splits = item.getName().split("\\.");
String extension = "";
if (splits.length > 0) {
@ -344,7 +351,6 @@ public class ItemBuilder {
if (allowedFileExtension==null || allowedFileExtension.size()==0) {
return true;
}
try {
if (! (item instanceof FolderItem)) {
String name = item.getName();

View File

@ -322,32 +322,20 @@ public class WorkspaceExplorerServiceImpl extends RemoteServiceServlet implement
*/
@Override
public Long getSizeByItemId(String itemId) throws Exception {
//TODO: implementation missing
return 0L;
// logger.info("get Size By ItemId "+ itemId);
// try {
//
// Workspace workspace = getWorkspace();
// WorkspaceItem wsItem = workspace.getItem(itemId);
// Long size = new Long(-1);
//
// if(wsItem instanceof FolderItem){ //ITEM
// FolderItem folderItem = (FolderItem) wsItem;
// size = new Long(folderItem.getLength());
// } else if (wsItem instanceof WorkspaceFolder ){ //FOLDER
// WorkspaceFolder theFolder = (WorkspaceFolder) wsItem;
// size = theFolder.getSize();
// } else if (wsItem instanceof WorkspaceSharedFolder){ //SHARED FOLDER
// WorkspaceSharedFolder theFolder = (WorkspaceSharedFolder) wsItem;
// size = theFolder.getSize();
// }
// logger.info("returning size: " +size);
// return size;
//
// } catch (Exception e) {
// logger.error("get Size By ItemId ", e);
// throw new Exception(e.getMessage());
// }
_log.debug("get Size By ItemId "+ itemId);
try {
Item wsItem = Whorespace.getItem(getThreadLocalRequest(), itemId);
_log.trace("workspace retrieve item name: "+wsItem.getName());
if((wsItem instanceof FolderItem)) //if is a folder no mime
return null;
AbstractFileItem file = (AbstractFileItem) wsItem;
return file.getContent().getSize();
} catch (Exception e) {
_log.error("get MimeType By ItemId ", e);
throw new Exception(e.getMessage());
}
}
/* (non-Javadoc)

View File

@ -8,7 +8,6 @@ package org.gcube.portlets.widgets.wsexplorer.shared;
* The Enum ItemType.
*
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
* Jun 18, 2015
*/
public enum ItemType {
PRIVATE_FOLDER,
@ -28,6 +27,7 @@ public enum ItemType {
ZIP,
RAR,
HTML,
XML,
TEXT_PLAIN,
DOCUMENT,
PRESENTATION,