updated change permissions on VRE folder

git-svn-id: http://svn.d4science-ii.research-infrastructures.eu/gcube/trunk/portlets/user/workspace-tree-widget@93261 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
Francesco Mangiacrapa 2014-03-18 11:50:53 +00:00
parent 1bfb9322bb
commit a6b3114f4c
6 changed files with 85 additions and 7 deletions

View File

@ -78,8 +78,6 @@ import org.gcube.portlets.user.workspace.client.event.SendMessageEvent;
import org.gcube.portlets.user.workspace.client.event.SendMessageEventHandler;
import org.gcube.portlets.user.workspace.client.event.SessionExpiredEvent;
import org.gcube.portlets.user.workspace.client.event.SessionExpiredEventHandler;
import org.gcube.portlets.user.workspace.client.event.VRESettingPermissionEvent;
import org.gcube.portlets.user.workspace.client.event.VRESettingPermissionEventHandler;
import org.gcube.portlets.user.workspace.client.event.SmartFolderSelectedEvent;
import org.gcube.portlets.user.workspace.client.event.SmartFolderSelectedEventHandler;
import org.gcube.portlets.user.workspace.client.event.SubTreeLoadedEvent;
@ -90,6 +88,10 @@ import org.gcube.portlets.user.workspace.client.event.TrashEvent;
import org.gcube.portlets.user.workspace.client.event.TrashEventHandler;
import org.gcube.portlets.user.workspace.client.event.UnShareFolderEvent;
import org.gcube.portlets.user.workspace.client.event.UnShareFolderEventHandler;
import org.gcube.portlets.user.workspace.client.event.UpdatedVREPermissionEvent;
import org.gcube.portlets.user.workspace.client.event.UpdatedVREPermissionEventHandler;
import org.gcube.portlets.user.workspace.client.event.VRESettingPermissionEvent;
import org.gcube.portlets.user.workspace.client.event.VRESettingPermissionEventHandler;
import org.gcube.portlets.user.workspace.client.event.WebDavUrlEvent;
import org.gcube.portlets.user.workspace.client.event.WebDavUrlEventHandler;
import org.gcube.portlets.user.workspace.client.interfaces.EventsTypeEnum;
@ -388,7 +390,6 @@ public class AppControllerExplorer implements EventHandler, TreeAppControllerInt
GWT.log("share completed refresh folder : "+parentToRefresh.getName() +" get id: "+parentToRefresh.getIdentifier());
eventBus.fireEvent(new RefreshFolderEvent(parentToRefresh, true, false, false));
}
explorerPanel.unmask();
}
@ -1689,6 +1690,15 @@ public class AppControllerExplorer implements EventHandler, TreeAppControllerInt
Info.display("Attention", "Select a VRE Folder to change permissions!");
}
});
eventBus.addHandler(UpdatedVREPermissionEvent.TYPE, new UpdatedVREPermissionEventHandler() {
@Override
public void onUpdateVREPermissions(UpdatedVREPermissionEvent updatedVREPermissionEvent) {
notifySubscriber(updatedVREPermissionEvent);
}
});
@ -1935,6 +1945,10 @@ public class AppControllerExplorer implements EventHandler, TreeAppControllerInt
TrashEvent trashEvent = (TrashEvent) event;
sub.trashEvent(trashEvent.getTrashOperation(), trashEvent.getTargetFileModel());
}else if(event instanceof UpdatedVREPermissionEvent){
UpdatedVREPermissionEvent vreEvent = (UpdatedVREPermissionEvent) event;
sub.updatedVREPermissions(vreEvent.getVreFolderId());
}
}

View File

@ -0,0 +1,45 @@
package org.gcube.portlets.user.workspace.client.event;
import org.gcube.portlets.user.workspace.client.interfaces.EventsTypeEnum;
import org.gcube.portlets.user.workspace.client.interfaces.GuiEventInterface;
import com.google.gwt.event.shared.GwtEvent;
/**
*
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
* @Mar 14, 2014
*
*/
public class UpdatedVREPermissionEvent extends GwtEvent<UpdatedVREPermissionEventHandler> implements GuiEventInterface {
public static Type<UpdatedVREPermissionEventHandler> TYPE = new Type<UpdatedVREPermissionEventHandler>();
private String vreFolderId = null;
public UpdatedVREPermissionEvent(String folderId) {
this.vreFolderId = folderId;
}
@Override
public Type<UpdatedVREPermissionEventHandler> getAssociatedType() {
return TYPE;
}
@Override
protected void dispatch(UpdatedVREPermissionEventHandler handler) {
handler.onUpdateVREPermissions(this);
}
public String getVreFolderId() {
return vreFolderId;
}
/* (non-Javadoc)
* @see org.gcube.portlets.user.workspace.client.interfaces.GuiEventInterface#getKey()
*/
@Override
public EventsTypeEnum getKey() {
return EventsTypeEnum.UPDATED_VRE_PERMISSION;
}
}

View File

@ -0,0 +1,17 @@
package org.gcube.portlets.user.workspace.client.event;
import com.google.gwt.event.shared.EventHandler;
/**
*
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
* @Mar 18, 2014
*
*/
public interface UpdatedVREPermissionEventHandler extends EventHandler {
/**
* @param updatedVREPermissionEvent
*/
void onUpdateVREPermissions(UpdatedVREPermissionEvent updatedVREPermissionEvent);
}

View File

@ -31,5 +31,5 @@ public enum EventsTypeEnum
PASTED_EVENT,
COPY_EVENT,
TRASH_EVENT,
VRE_CHANGE_PERMISSION;
UPDATED_VRE_PERMISSION;
}

View File

@ -61,8 +61,8 @@ public interface SubscriberInterface {
void trashEvent(WorkspaceTrashOperation trashOperation, FileModel targetFileModel);
/**
* @param fileModel
* @param vreFolderId
*/
void changePermission(FileModel fileModel);
void updatedVREPermissions(String vreFolderId);
}

View File

@ -3,7 +3,7 @@ package org.gcube.portlets.user.workspace.client.view.sharing.permissions;
import java.util.List;
import org.gcube.portlets.user.workspace.client.AppControllerExplorer;
import org.gcube.portlets.user.workspace.client.event.VRESettingPermissionEvent;
import org.gcube.portlets.user.workspace.client.event.UpdatedVREPermissionEvent;
import org.gcube.portlets.user.workspace.client.model.FileModel;
import org.gcube.portlets.user.workspace.client.model.InfoContactModel;
import org.gcube.portlets.user.workspace.client.resources.Resources;
@ -154,6 +154,8 @@ public class DialogPermission extends Dialog {
INSTANCE.unmask();
INSTANCE.hide();
new InfoDisplay("Permission updated", "The permissions have been changed correctly");
AppControllerExplorer.getEventBus().fireEvent(new UpdatedVREPermissionEvent(folder.getIdentifier()));
}
});
}