2015-06-25 15:52:02 +02:00
|
|
|
/**
|
2016-02-01 16:03:11 +01:00
|
|
|
*
|
2015-06-25 15:52:02 +02:00
|
|
|
*/
|
|
|
|
package org.gcube.portlets.widgets.wsexplorer.client;
|
|
|
|
|
|
|
|
import java.util.List;
|
|
|
|
|
2015-08-03 18:42:05 +02:00
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.event.BreadcrumbClickEvent;
|
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.event.BreadcrumbClickEventHandler;
|
2016-02-02 12:55:50 +01:00
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.event.BreadcrumbInitEvent;
|
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.event.BreadcrumbInitEventHandler;
|
2015-07-06 17:18:23 +02:00
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.event.ClickItemEvent;
|
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.event.ClickItemEventHandler;
|
2016-02-01 16:03:11 +01:00
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.event.CreateFolderClickEvent;
|
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.event.CreateFolderClickEventHandler;
|
2015-06-25 15:52:02 +02:00
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.event.LoadFolderEvent;
|
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.event.LoadFolderEventHandler;
|
2015-06-25 17:22:13 +02:00
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.event.LoadMySpecialFolderEvent;
|
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.event.LoadMySpecialFolderEventHandler;
|
2015-06-25 15:52:02 +02:00
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.event.LoadRootEvent;
|
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.event.LoadRootEventHandler;
|
2015-08-03 18:42:05 +02:00
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.event.RootLoadedEvent;
|
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.event.RootLoadedEventHandler;
|
2015-07-06 17:18:23 +02:00
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.resources.WorkspaceExplorerResources;
|
2015-06-25 15:52:02 +02:00
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.view.Breadcrumbs;
|
2016-02-01 18:57:18 +01:00
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.view.CreateFolderForm;
|
2015-06-25 15:52:02 +02:00
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.view.Navigation;
|
|
|
|
import org.gcube.portlets.widgets.wsexplorer.client.view.WorkspaceExplorer;
|
2015-07-29 16:23:29 +02:00
|
|
|
import org.gcube.portlets.widgets.wsexplorer.shared.FilterCriteria;
|
2015-06-25 15:52:02 +02:00
|
|
|
import org.gcube.portlets.widgets.wsexplorer.shared.Item;
|
2015-06-30 14:52:40 +02:00
|
|
|
import org.gcube.portlets.widgets.wsexplorer.shared.ItemCategory;
|
2015-06-29 15:58:35 +02:00
|
|
|
import org.gcube.portlets.widgets.wsexplorer.shared.ItemType;
|
2015-06-25 15:52:02 +02:00
|
|
|
|
2015-07-06 12:27:48 +02:00
|
|
|
import com.github.gwtbootstrap.client.ui.Alert;
|
2015-06-30 14:52:40 +02:00
|
|
|
import com.github.gwtbootstrap.client.ui.constants.AlertType;
|
2015-06-25 15:52:02 +02:00
|
|
|
import com.google.gwt.core.client.GWT;
|
2015-07-06 17:18:23 +02:00
|
|
|
import com.google.gwt.dom.client.Style.Unit;
|
2015-07-09 18:34:48 +02:00
|
|
|
import com.google.gwt.dom.client.Style.VerticalAlign;
|
2015-06-25 15:52:02 +02:00
|
|
|
import com.google.gwt.event.shared.EventHandler;
|
|
|
|
import com.google.gwt.event.shared.HandlerManager;
|
2016-02-01 18:57:18 +01:00
|
|
|
import com.google.gwt.user.client.Window;
|
2015-06-25 15:52:02 +02:00
|
|
|
import com.google.gwt.user.client.rpc.AsyncCallback;
|
2015-07-06 17:18:23 +02:00
|
|
|
import com.google.gwt.user.client.ui.HorizontalPanel;
|
2015-07-09 18:34:48 +02:00
|
|
|
import com.google.gwt.user.client.ui.Image;
|
2015-07-06 17:18:23 +02:00
|
|
|
import com.google.gwt.user.client.ui.Label;
|
2015-06-25 15:52:02 +02:00
|
|
|
|
2015-06-25 17:22:13 +02:00
|
|
|
|
2015-06-25 15:52:02 +02:00
|
|
|
/**
|
2015-06-25 17:22:13 +02:00
|
|
|
* The Class WorkspaceExplorerController.
|
|
|
|
*
|
2015-06-25 15:52:02 +02:00
|
|
|
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
|
|
|
|
* Jun 25, 2015
|
|
|
|
*/
|
2015-06-29 15:58:35 +02:00
|
|
|
public class WorkspaceExplorerController implements EventHandler {
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2016-02-26 18:28:40 +01:00
|
|
|
public HandlerManager eventBus = new HandlerManager(null);
|
2015-06-25 15:52:02 +02:00
|
|
|
private WorkspaceExplorerPanel workspaceExplorerPanel;
|
2015-06-29 15:58:35 +02:00
|
|
|
private WorkspaceExplorer wsExplorer;
|
2015-12-03 12:03:12 +01:00
|
|
|
private Breadcrumbs breadcrumbs = new Breadcrumbs(eventBus);
|
|
|
|
private Navigation navigation = new Navigation(eventBus);
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-06-25 17:22:13 +02:00
|
|
|
/**
|
|
|
|
* Instantiates a new workspace explorer controller.
|
2016-02-01 16:03:11 +01:00
|
|
|
*
|
2015-08-03 18:42:05 +02:00
|
|
|
* As default all items are showable and selectable
|
|
|
|
* @param heightPanel the height panel
|
2015-06-25 17:22:13 +02:00
|
|
|
*/
|
2015-07-30 14:59:36 +02:00
|
|
|
public WorkspaceExplorerController(String heightPanel){
|
2015-06-25 15:52:02 +02:00
|
|
|
bindEvents();
|
2015-08-04 11:11:58 +02:00
|
|
|
//As default all items are showable and selectable
|
2015-12-03 12:03:12 +01:00
|
|
|
wsExplorer = new WorkspaceExplorer(eventBus, ItemType.values(), ItemType.values());
|
2015-07-30 14:59:36 +02:00
|
|
|
workspaceExplorerPanel = new WorkspaceExplorerPanel(5, wsExplorer.getPanel(), breadcrumbs, navigation, heightPanel);
|
2015-06-25 15:52:02 +02:00
|
|
|
}
|
2016-02-01 16:03:11 +01:00
|
|
|
|
|
|
|
|
2015-07-29 16:23:29 +02:00
|
|
|
/**
|
|
|
|
* Instantiates a new workspace explorer controller.
|
2016-02-01 16:03:11 +01:00
|
|
|
*
|
2015-08-03 18:42:05 +02:00
|
|
|
* As default all items are showable and selectable
|
2016-02-01 16:03:11 +01:00
|
|
|
*
|
2015-07-29 16:23:29 +02:00
|
|
|
* @param filterCriteria the filter criteria
|
2015-08-03 18:42:05 +02:00
|
|
|
* @param heightPanel the height panel
|
2015-07-29 16:23:29 +02:00
|
|
|
*/
|
2015-07-30 14:59:36 +02:00
|
|
|
public WorkspaceExplorerController(FilterCriteria filterCriteria, String heightPanel) {
|
2015-07-29 16:23:29 +02:00
|
|
|
bindEvents();
|
2015-08-04 11:11:58 +02:00
|
|
|
//As default all items are showable and selectable
|
2015-12-03 12:03:12 +01:00
|
|
|
wsExplorer = new WorkspaceExplorer(eventBus, filterCriteria, ItemType.values(), ItemType.values());
|
2015-07-30 14:59:36 +02:00
|
|
|
workspaceExplorerPanel = new WorkspaceExplorerPanel(5, wsExplorer.getPanel(), breadcrumbs, navigation, heightPanel);
|
2015-07-29 16:23:29 +02:00
|
|
|
}
|
|
|
|
|
2015-06-25 17:22:13 +02:00
|
|
|
/**
|
|
|
|
* Bind events.
|
|
|
|
*/
|
2015-06-25 15:52:02 +02:00
|
|
|
private void bindEvents() {
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-06-25 15:52:02 +02:00
|
|
|
eventBus.addHandler(LoadFolderEvent.TYPE, new LoadFolderEventHandler() {
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-06-25 15:52:02 +02:00
|
|
|
@Override
|
|
|
|
public void onLoadFolder(LoadFolderEvent loadFolderEvent) {
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-06-25 17:22:13 +02:00
|
|
|
if(loadFolderEvent.getTargetItem()!=null && loadFolderEvent.getTargetItem().isFolder()){
|
2015-12-02 18:36:58 +01:00
|
|
|
try {
|
|
|
|
wsExplorer.loadFolder(loadFolderEvent.getTargetItem());
|
|
|
|
loadParentBreadcrumbByItemId(loadFolderEvent.getTargetItem().getId(), true);
|
|
|
|
clearMoreInfo();
|
|
|
|
} catch (Exception e) {
|
|
|
|
GWT.log(e.getMessage());
|
|
|
|
}
|
2015-06-25 15:52:02 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-08-03 18:42:05 +02:00
|
|
|
eventBus.addHandler(RootLoadedEvent.TYPE, new RootLoadedEventHandler() {
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-08-03 18:42:05 +02:00
|
|
|
@Override
|
|
|
|
public void onRootLoaded(RootLoadedEvent rootLoadedEvent) {
|
|
|
|
|
|
|
|
}
|
|
|
|
});
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-08-03 18:42:05 +02:00
|
|
|
eventBus.addHandler(BreadcrumbClickEvent.TYPE, new BreadcrumbClickEventHandler() {
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-08-03 18:42:05 +02:00
|
|
|
@Override
|
|
|
|
public void onBreadcrumbClick(BreadcrumbClickEvent breadcrumbClickEvent) {
|
2016-02-26 18:28:40 +01:00
|
|
|
eventBus.fireEvent(new LoadFolderEvent(breadcrumbClickEvent.getTargetItem()));
|
2015-08-03 18:42:05 +02:00
|
|
|
}
|
|
|
|
});
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-06-25 15:52:02 +02:00
|
|
|
eventBus.addHandler(LoadRootEvent.TYPE, new LoadRootEventHandler() {
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-06-25 15:52:02 +02:00
|
|
|
@Override
|
|
|
|
public void onLoadRoot(LoadRootEvent loadRootEvent) {
|
2015-06-29 15:58:35 +02:00
|
|
|
wsExplorer.loadRoot();
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-12-09 15:53:22 +01:00
|
|
|
WorkspaceExplorerConstants.workspaceNavigatorService.getItemByCategory(ItemCategory.HOME, new AsyncCallback<Item>() {
|
2015-06-30 14:52:40 +02:00
|
|
|
|
|
|
|
@Override
|
|
|
|
public void onFailure(Throwable caught) {
|
|
|
|
GWT.log(caught.getMessage());
|
|
|
|
breadcrumbs.clear();
|
2016-02-03 17:08:33 +01:00
|
|
|
navigation.setVisibleNewFolderFacility(false);
|
2015-06-30 14:52:40 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void onSuccess(Item result) {
|
|
|
|
result.setName(WorkspaceExplorerConstants.HOME_LABEL); //FORCE SET NAME LIKE "HOME_LABEL"
|
|
|
|
breadcrumbs.init(result);
|
2016-02-03 17:08:33 +01:00
|
|
|
navigation.setVisibleNewFolderFacility(true);
|
2015-07-06 17:18:23 +02:00
|
|
|
clearMoreInfo();
|
2015-06-30 14:52:40 +02:00
|
|
|
}
|
|
|
|
});
|
2015-06-25 15:52:02 +02:00
|
|
|
}
|
|
|
|
});
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2016-02-02 12:55:50 +01:00
|
|
|
eventBus.addHandler(BreadcrumbInitEvent.TYPE, new BreadcrumbInitEventHandler() {
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void onBreadcrumbInit(BreadcrumbInitEvent breadcrumbInitEvent) {
|
2016-02-03 17:08:33 +01:00
|
|
|
navigation.setVisibleNewFolderFacility(true);
|
2016-02-02 12:55:50 +01:00
|
|
|
}
|
|
|
|
});
|
|
|
|
|
2015-07-06 17:18:23 +02:00
|
|
|
eventBus.addHandler(ClickItemEvent.TYPE, new ClickItemEventHandler() {
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-07-06 12:27:48 +02:00
|
|
|
@Override
|
2015-07-06 17:18:23 +02:00
|
|
|
public void onClick(final ClickItemEvent clickItemEvent) {
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-07-06 17:18:23 +02:00
|
|
|
Item item = clickItemEvent.getItem();
|
|
|
|
if(item!=null){
|
|
|
|
updateMoreInfo(item);
|
2015-07-06 12:27:48 +02:00
|
|
|
}
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-07-06 12:27:48 +02:00
|
|
|
}
|
|
|
|
});
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-06-25 17:22:13 +02:00
|
|
|
eventBus.addHandler(LoadMySpecialFolderEvent.TYPE, new LoadMySpecialFolderEventHandler() {
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-06-25 17:22:13 +02:00
|
|
|
@Override
|
|
|
|
public void onLoadMySpecialFolder(LoadMySpecialFolderEvent loadMySpecialFolderEvent) {
|
|
|
|
wsExplorer.loadMySpecialFolder();
|
2015-06-30 14:52:40 +02:00
|
|
|
|
2015-12-09 15:53:22 +01:00
|
|
|
WorkspaceExplorerConstants.workspaceNavigatorService.getItemByCategory(ItemCategory.VRE_FOLDER, new AsyncCallback<Item>() {
|
2015-06-30 14:52:40 +02:00
|
|
|
|
|
|
|
@Override
|
|
|
|
public void onFailure(Throwable caught) {
|
|
|
|
GWT.log(caught.getMessage());
|
2016-02-03 17:08:33 +01:00
|
|
|
navigation.setVisibleNewFolderFacility(false);
|
2015-06-30 14:52:40 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void onSuccess(Item result) {
|
|
|
|
breadcrumbs.init(result);
|
2016-02-03 17:08:33 +01:00
|
|
|
navigation.setVisibleNewFolderFacility(false);
|
2015-07-06 17:18:23 +02:00
|
|
|
clearMoreInfo();
|
2015-06-30 14:52:40 +02:00
|
|
|
}
|
|
|
|
});
|
2015-06-25 17:22:13 +02:00
|
|
|
}
|
|
|
|
});
|
2016-02-01 16:03:11 +01:00
|
|
|
|
|
|
|
eventBus.addHandler(CreateFolderClickEvent.TYPE, new CreateFolderClickEventHandler() {
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void onClick(CreateFolderClickEvent createFolderClickEvent) {
|
|
|
|
|
2016-02-01 18:57:18 +01:00
|
|
|
CreateFolderForm createFolder = new CreateFolderForm() {
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void subtmitHandler(String folderName) {
|
|
|
|
|
2016-02-03 17:08:33 +01:00
|
|
|
showMessage(AlertType.INFO, "Creating folder \""+folderName+"\"");
|
|
|
|
|
2016-02-01 18:57:18 +01:00
|
|
|
WorkspaceExplorerConstants.workspaceNavigatorService.createFolder(folderName, "", breadcrumbs.getLastParent().getId(), new AsyncCallback<Item>() {
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void onFailure(Throwable caught) {
|
2016-02-03 17:08:33 +01:00
|
|
|
hideMessage();
|
|
|
|
clearMoreInfo();
|
2016-02-01 18:57:18 +01:00
|
|
|
Window.alert(caught.getMessage());
|
|
|
|
GWT.log(caught.getMessage());
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void onSuccess(Item result) {
|
2016-02-03 17:08:33 +01:00
|
|
|
hideMessage();
|
2016-02-01 18:57:18 +01:00
|
|
|
if(result!=null){
|
|
|
|
wsExplorer.addItemToExplorer(result);
|
|
|
|
clearMoreInfo();
|
|
|
|
}else
|
|
|
|
Window.alert("Create folder error, Try again");
|
|
|
|
}
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void closeHandler() {
|
|
|
|
workspaceExplorerPanel.getSouthPanel().remove(this);
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
workspaceExplorerPanel.getSouthPanel().add(createFolder);
|
2016-02-02 12:42:40 +01:00
|
|
|
createFolder.getTextBoxFolderName().setFocus(true);
|
2016-02-01 18:57:18 +01:00
|
|
|
|
2016-02-01 16:03:11 +01:00
|
|
|
}
|
|
|
|
});
|
2015-06-25 15:52:02 +02:00
|
|
|
}
|
|
|
|
|
2015-06-25 17:22:13 +02:00
|
|
|
/**
|
|
|
|
* Load parent breadcrumb by item id.
|
|
|
|
*
|
|
|
|
* @param itemIdentifier the item identifier
|
|
|
|
* @param includeItemAsParent the include item as parent
|
|
|
|
*/
|
2015-06-25 15:52:02 +02:00
|
|
|
protected void loadParentBreadcrumbByItemId(final String itemIdentifier, boolean includeItemAsParent){
|
|
|
|
|
|
|
|
GWT.log("Reload Parent Breadcrumb: [Item id: "+itemIdentifier+"]");
|
|
|
|
|
2015-12-09 15:53:22 +01:00
|
|
|
WorkspaceExplorerConstants.workspaceNavigatorService.getBreadcrumbsByItemIdentifier(itemIdentifier, includeItemAsParent, new AsyncCallback<List<Item>>() {
|
2015-06-25 15:52:02 +02:00
|
|
|
|
|
|
|
@Override
|
|
|
|
public void onFailure(Throwable caught) {
|
2015-06-30 14:52:40 +02:00
|
|
|
GWT.log(caught.getMessage());
|
|
|
|
wsExplorer.setAlert(caught.getMessage(), AlertType.ERROR);
|
2015-06-25 15:52:02 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void onSuccess(List<Item> result) {
|
2015-07-06 17:18:23 +02:00
|
|
|
if(result!=null){
|
2015-06-25 15:52:02 +02:00
|
|
|
breadcrumbs.setPath(result);
|
2015-07-06 17:18:23 +02:00
|
|
|
clearMoreInfo();
|
|
|
|
}
|
2015-06-25 15:52:02 +02:00
|
|
|
}
|
|
|
|
});
|
2015-07-06 17:18:23 +02:00
|
|
|
}
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-07-29 16:23:29 +02:00
|
|
|
/**
|
|
|
|
* Clear more info.
|
|
|
|
*/
|
2015-07-06 17:18:23 +02:00
|
|
|
private void clearMoreInfo(){
|
|
|
|
workspaceExplorerPanel.getSouthPanel().clear();
|
|
|
|
}
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-07-29 16:23:29 +02:00
|
|
|
/**
|
|
|
|
* Update more info.
|
|
|
|
*
|
|
|
|
* @param item the item
|
|
|
|
*/
|
2015-07-06 17:18:23 +02:00
|
|
|
private void updateMoreInfo(Item item){
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-07-06 17:18:23 +02:00
|
|
|
if(item!=null){
|
|
|
|
workspaceExplorerPanel.getSouthPanel().clear();
|
|
|
|
Alert alert = new Alert();
|
|
|
|
alert.addStyleName("alert-custom");
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-07-06 17:18:23 +02:00
|
|
|
final HorizontalPanel hp = new HorizontalPanel();
|
2015-07-09 18:34:48 +02:00
|
|
|
Image iconInfo = WorkspaceExplorerResources.getIconInfo().createImage();
|
|
|
|
iconInfo.getElement().getStyle().setVerticalAlign(VerticalAlign.MIDDLE);
|
2015-07-10 15:25:42 +02:00
|
|
|
hp.add(iconInfo);
|
2015-07-06 17:18:23 +02:00
|
|
|
final Label labelName = new Label("Name: "+item.getName());
|
|
|
|
double marginValue = 10.0;
|
|
|
|
labelName.getElement().getStyle().setMarginLeft(marginValue, Unit.PX);
|
|
|
|
labelName.getElement().getStyle().setMarginRight(marginValue, Unit.PX);
|
|
|
|
final Label labelSize = new Label("Size: ");
|
|
|
|
labelSize.getElement().getStyle().setMarginRight(marginValue, Unit.PX);
|
|
|
|
final Label labelMime = new Label("Mime Type: ");
|
|
|
|
labelMime.getElement().getStyle().setMarginRight(marginValue, Unit.PX);
|
|
|
|
final Label labelACL = new Label("Rights: ");
|
|
|
|
labelACL.getElement().getStyle().setMarginRight(marginValue, Unit.PX);
|
|
|
|
hp.add(labelName);
|
|
|
|
hp.add(labelSize);
|
|
|
|
if(!item.isFolder())
|
|
|
|
hp.add(labelMime);
|
|
|
|
hp.add(labelACL);
|
2015-12-09 15:53:22 +01:00
|
|
|
WorkspaceExplorerConstants.workspaceNavigatorService.getReadableSizeByItemId(item.getId(), new AsyncCallback<String>() {
|
2015-06-25 15:52:02 +02:00
|
|
|
|
2015-07-06 17:18:23 +02:00
|
|
|
@Override
|
|
|
|
public void onFailure(Throwable caught) {
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
2015-07-10 11:57:39 +02:00
|
|
|
public void onSuccess(String result) {
|
|
|
|
labelSize.setText("Size: " +result);
|
2015-07-06 17:18:23 +02:00
|
|
|
}
|
|
|
|
});
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-07-06 17:18:23 +02:00
|
|
|
if(!item.isFolder()){
|
2015-12-09 15:53:22 +01:00
|
|
|
WorkspaceExplorerConstants.workspaceNavigatorService.getMimeType(item.getId(), new AsyncCallback<String>() {
|
2015-07-06 17:18:23 +02:00
|
|
|
|
|
|
|
@Override
|
|
|
|
public void onFailure(Throwable caught) {
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void onSuccess(String result) {
|
|
|
|
if(result!=null)
|
|
|
|
labelMime.setText("Mime Type: "+result);
|
|
|
|
}
|
|
|
|
});
|
|
|
|
}
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-12-09 15:53:22 +01:00
|
|
|
WorkspaceExplorerConstants.workspaceNavigatorService.getUserACLForFolderId(item.getId(), new AsyncCallback<String>() {
|
2015-07-06 17:18:23 +02:00
|
|
|
|
|
|
|
@Override
|
|
|
|
public void onFailure(Throwable caught) {
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void onSuccess(String result) {
|
|
|
|
labelACL.setText("Rights: "+result);
|
|
|
|
}
|
|
|
|
});
|
|
|
|
alert.add(hp);
|
|
|
|
alert.setType(AlertType.DEFAULT);
|
|
|
|
alert.setClose(false);
|
|
|
|
workspaceExplorerPanel.getSouthPanel().add(alert); }
|
2015-06-25 15:52:02 +02:00
|
|
|
}
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-06-30 18:10:45 +02:00
|
|
|
/**
|
2015-07-29 16:23:29 +02:00
|
|
|
* Gets the breadcrumbs.
|
|
|
|
*
|
2015-06-30 18:10:45 +02:00
|
|
|
* @return the breadcrumbs
|
|
|
|
*/
|
|
|
|
public Breadcrumbs getBreadcrumbs() {
|
|
|
|
return breadcrumbs;
|
|
|
|
}
|
2015-06-25 15:52:02 +02:00
|
|
|
|
|
|
|
/**
|
2015-06-25 17:22:13 +02:00
|
|
|
* Gets the workspace explorer panel.
|
|
|
|
*
|
2015-06-25 15:52:02 +02:00
|
|
|
* @return the workspaceExplorerPanel
|
|
|
|
*/
|
|
|
|
public WorkspaceExplorerPanel getWorkspaceExplorerPanel() {
|
|
|
|
return workspaceExplorerPanel;
|
|
|
|
}
|
2015-06-29 15:14:00 +02:00
|
|
|
|
|
|
|
/**
|
2015-07-29 16:23:29 +02:00
|
|
|
* Gets the ws explorer.
|
|
|
|
*
|
2015-06-29 15:14:00 +02:00
|
|
|
* @return the wsExplorer
|
|
|
|
*/
|
|
|
|
public WorkspaceExplorer getWsExplorer() {
|
|
|
|
return wsExplorer;
|
|
|
|
}
|
2015-06-29 15:58:35 +02:00
|
|
|
|
|
|
|
/**
|
2015-07-29 16:23:29 +02:00
|
|
|
* Sets the selectable types.
|
|
|
|
*
|
|
|
|
* @param selectableTypes the new selectable types
|
2015-06-29 15:58:35 +02:00
|
|
|
*/
|
|
|
|
public void setSelectableTypes(ItemType[] selectableTypes) {
|
|
|
|
wsExplorer.setSelectableTypes(selectableTypes);
|
|
|
|
}
|
2016-02-01 16:03:11 +01:00
|
|
|
|
2015-06-29 15:58:35 +02:00
|
|
|
/**
|
2015-07-29 16:23:29 +02:00
|
|
|
* Gets the selectable types.
|
|
|
|
*
|
2015-06-29 15:58:35 +02:00
|
|
|
* @return the selectableTypes
|
|
|
|
*/
|
|
|
|
public List<ItemType> getSelectableTypes() {
|
|
|
|
return wsExplorer.getSelectableTypes();
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
2015-07-29 16:23:29 +02:00
|
|
|
* Gets the showable types.
|
|
|
|
*
|
|
|
|
* @return the showable types
|
2015-06-29 15:58:35 +02:00
|
|
|
*/
|
|
|
|
public List<ItemType> getShowableTypes() {
|
|
|
|
return wsExplorer.getShowableTypes();
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
2015-07-29 16:23:29 +02:00
|
|
|
* Sets the showable types.
|
|
|
|
*
|
|
|
|
* @param showableTypes the new showable types
|
2015-06-29 15:58:35 +02:00
|
|
|
*/
|
|
|
|
public void setShowableTypes(ItemType[] showableTypes) {
|
|
|
|
wsExplorer.setShowableTypes(showableTypes);
|
|
|
|
}
|
2015-08-03 18:42:05 +02:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Item is selectable.
|
|
|
|
*
|
|
|
|
* @param item the item
|
|
|
|
* @return true, if successful
|
|
|
|
*/
|
|
|
|
public boolean itemIsSelectable(Item item){
|
2015-10-07 17:10:52 +02:00
|
|
|
GWT.log("Selectable type: "+wsExplorer.getSelectableTypes());
|
|
|
|
GWT.log("item: "+item);
|
2015-08-03 18:42:05 +02:00
|
|
|
if (item!=null){
|
2015-10-07 17:10:52 +02:00
|
|
|
boolean selectable = wsExplorer.getSelectableTypes().contains(item.getType());
|
2016-02-01 16:03:11 +01:00
|
|
|
return selectable?true:false;
|
2015-08-03 18:42:05 +02:00
|
|
|
}
|
|
|
|
return false;
|
|
|
|
}
|
2016-02-26 18:28:40 +01:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @return the eventBus
|
|
|
|
*/
|
|
|
|
public HandlerManager getEventBus() {
|
|
|
|
return eventBus;
|
|
|
|
}
|
|
|
|
|
2015-06-25 15:52:02 +02:00
|
|
|
}
|