99 lines
3.3 KiB
Java
99 lines
3.3 KiB
Java
/**
|
|
*
|
|
*/
|
|
package org.gcube.portlets.widgets.wsexplorer.client;
|
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.resources.old.WorkspaceLightTreeResources;
|
|
import org.gcube.portlets.widgets.wsexplorer.shared.Item;
|
|
import org.gcube.portlets.widgets.wsexplorer.shared.ItemType;
|
|
|
|
import com.google.gwt.resources.client.ImageResource;
|
|
|
|
/**
|
|
* The Class Util.
|
|
*
|
|
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it Jun 18, 2015
|
|
*/
|
|
public class Util {
|
|
|
|
public static final ItemType[] FOLDERS = new ItemType[] { ItemType.ROOT,
|
|
ItemType.FOLDER };
|
|
|
|
/**
|
|
* Checks if is folder.
|
|
*
|
|
* @param type
|
|
* the type
|
|
* @return true, if is folder
|
|
*/
|
|
public static boolean isFolder(ItemType type) {
|
|
for (ItemType folder : FOLDERS)
|
|
if (type == folder)
|
|
return true;
|
|
return false;
|
|
}
|
|
|
|
/**
|
|
* Ellipsis.
|
|
*
|
|
* @param value
|
|
* the value
|
|
* @param lenght
|
|
* the lenght
|
|
* @param left
|
|
* the left
|
|
* @return the string
|
|
*/
|
|
public static String ellipsis(String value, int lenght, boolean left) {
|
|
if (lenght < 3)
|
|
throw new IllegalArgumentException(
|
|
"The lenght have to be more than 3");
|
|
if (value.length() > lenght) {
|
|
if (left)
|
|
return "..." + value.substring(value.length() - lenght + 3);
|
|
else
|
|
return value.substring(0, lenght - 3) + "...";
|
|
}
|
|
return value;
|
|
}
|
|
|
|
|
|
/**
|
|
* Returns the image based on the item type.
|
|
* @param type the item type.
|
|
* @return the image.
|
|
*/
|
|
public static ImageResource getImage(Item item)
|
|
{
|
|
switch (item.getType()) {
|
|
case ROOT: return WorkspaceLightTreeResources.INSTANCE.root();
|
|
case FOLDER: {
|
|
if (item.isSharedFolder()) return WorkspaceLightTreeResources.INSTANCE.sharedFolder();
|
|
else return WorkspaceLightTreeResources.INSTANCE.folder();
|
|
}
|
|
case EXTERNAL_IMAGE: return WorkspaceLightTreeResources.INSTANCE.external_image();
|
|
case EXTERNAL_FILE: return WorkspaceLightTreeResources.INSTANCE.external_file();
|
|
case EXTERNAL_PDF_FILE: return WorkspaceLightTreeResources.INSTANCE.external_pdf();
|
|
case EXTERNAL_URL: return WorkspaceLightTreeResources.INSTANCE.external_url();
|
|
case REPORT_TEMPLATE: return WorkspaceLightTreeResources.INSTANCE.report_template();
|
|
case REPORT: return WorkspaceLightTreeResources.INSTANCE.report();
|
|
case QUERY: return WorkspaceLightTreeResources.INSTANCE.query();
|
|
case DOCUMENT: return WorkspaceLightTreeResources.INSTANCE.document();
|
|
case METADATA: return WorkspaceLightTreeResources.INSTANCE.metadata();
|
|
case PDF_DOCUMENT: return WorkspaceLightTreeResources.INSTANCE.pdf_document();
|
|
case IMAGE_DOCUMENT: return WorkspaceLightTreeResources.INSTANCE.image_document();
|
|
case URL_DOCUMENT: return WorkspaceLightTreeResources.INSTANCE.url_document();
|
|
// case TIME_SERIES: return WorkspaceLightTreeResources.INSTANCE.timeseries();
|
|
// case AQUAMAPS_ITEM: return WorkspaceLightTreeResources.INSTANCE.aquamaps();
|
|
// case WORKFLOW_REPORT: return WorkspaceLightTreeResources.INSTANCE.workflow_report();
|
|
// case WORKFLOW_TEMPLATE: return WorkspaceLightTreeResources.INSTANCE.workflow_template();
|
|
|
|
case UNKNOWN_TYPE: return WorkspaceLightTreeResources.INSTANCE.unknownType();
|
|
default: {
|
|
System.err.println("Unknown item type "+item.getType());
|
|
return WorkspaceLightTreeResources.INSTANCE.unknownType();
|
|
}
|
|
}
|
|
}
|
|
}
|