From 780b017d1f2d97f5479d5650883b65fd532a5e17 Mon Sep 17 00:00:00 2001 From: Francesco Mangiacrapa Date: Tue, 20 Mar 2018 10:25:43 +0000 Subject: [PATCH] Added sync completed listener git-svn-id: http://svn.d4science-ii.research-infrastructures.eu/gcube/trunk/portlets/user/workspace-tree-widget@165259 82a268e6-3cf1-43bd-a215-b396298e98cf --- .../client/AppControllerExplorer.java | 86 +++++++++++++++++++ 1 file changed, 86 insertions(+) diff --git a/src/main/java/org/gcube/portlets/user/workspace/client/AppControllerExplorer.java b/src/main/java/org/gcube/portlets/user/workspace/client/AppControllerExplorer.java index f4fa445..166db6c 100644 --- a/src/main/java/org/gcube/portlets/user/workspace/client/AppControllerExplorer.java +++ b/src/main/java/org/gcube/portlets/user/workspace/client/AppControllerExplorer.java @@ -151,6 +151,7 @@ import org.gcube.portlets.widgets.workspacesharingwidget.client.view.sharing.mul import org.gcube.portlets.widgets.workspaceuploader.client.WorkspaceUploadNotification.WorskpaceUploadNotificationListener; import org.gcube.portlets.widgets.workspaceuploader.client.uploader.DialogUpload.UPLOAD_TYPE; import org.gcube.portlets.widgets.workspaceuploader.client.uploader.MultipleDilaogUpload; +import org.gcube.portlets.widgets.wsthreddssync.client.SyncCompletedNotification.SyncCompletedNotificationListner; import org.gcube.portlets.widgets.wsthreddssync.client.WsThreddsWidget; import org.gcube.portlets.widgets.wsthreddssync.shared.WsFolder; @@ -286,6 +287,91 @@ public class AppControllerExplorer implements EventHandler, TreeAppControllerInt WsFolder wsFolder = new WsFolder(folder.getIdentifier(), folder.getName()); try { wsThreddsWidget.showSyncFolderInfo(wsFolder); + + wsThreddsWidget.addSyncCompletedListner(new SyncCompletedNotificationListner() { + + @Override + public void onSyncError(WsFolder folder) { + + rpcWorkspaceService.getListParentsByItemIdentifier(folder.getFolderId(), false, new AsyncCallback>() { + + @Override + public void onFailure(Throwable caught) { + + // TODO Auto-generated method stub + + } + + @Override + public void onSuccess( + List result) { + + if(result.size()>0){ + + eventBus.fireEvent(new RefreshFolderEvent(result.get(result.size()-1), true, false, false)); + } + + } + }); + } + + @Override + public void onSyncCompleted(WsFolder folder) { + + if(folder!=null){ + + rpcWorkspaceService.getListParentsByItemIdentifier(folder.getFolderId(), false, new AsyncCallback>() { + + @Override + public void onFailure(Throwable caught) { + + // TODO Auto-generated method stub + + } + + @Override + public void onSuccess( + List result) { + + if(result.size()>0){ + + eventBus.fireEvent(new RefreshFolderEvent(result.get(result.size()-1), true, false, false)); + } + + } + }); + } + } + + @Override + public void onUnSyncPerformed(WsFolder folder) { + + if(folder!=null){ + + rpcWorkspaceService.getListParentsByItemIdentifier(folder.getFolderId(), false, new AsyncCallback>() { + + @Override + public void onFailure(Throwable caught) { + + // TODO Auto-generated method stub + + } + + @Override + public void onSuccess( + List result) { + + if(result.size()>0){ + + eventBus.fireEvent(new RefreshFolderEvent(result.get(result.size()-1), true, false, false)); + } + + } + }); + } + + } + }); } catch (Exception e) { Window.alert(e.getMessage()); }