2099: Workspace Explorer enhancements: create a new folder
Task-Url: https://support.d4science.org/issues/2099 Added event Create Folder Added method Create Folder git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/widgets/workspace-explorer@122679 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
60f0fbc2b9
commit
7edd7191ff
|
@ -1,5 +1,5 @@
|
|||
/**
|
||||
*
|
||||
*
|
||||
*/
|
||||
package org.gcube.portlets.widgets.wsexplorer.client;
|
||||
|
||||
|
@ -9,6 +9,8 @@ import org.gcube.portlets.widgets.wsexplorer.client.event.BreadcrumbClickEvent;
|
|||
import org.gcube.portlets.widgets.wsexplorer.client.event.BreadcrumbClickEventHandler;
|
||||
import org.gcube.portlets.widgets.wsexplorer.client.event.ClickItemEvent;
|
||||
import org.gcube.portlets.widgets.wsexplorer.client.event.ClickItemEventHandler;
|
||||
import org.gcube.portlets.widgets.wsexplorer.client.event.CreateFolderClickEvent;
|
||||
import org.gcube.portlets.widgets.wsexplorer.client.event.CreateFolderClickEventHandler;
|
||||
import org.gcube.portlets.widgets.wsexplorer.client.event.LoadFolderEvent;
|
||||
import org.gcube.portlets.widgets.wsexplorer.client.event.LoadFolderEventHandler;
|
||||
import org.gcube.portlets.widgets.wsexplorer.client.event.LoadMySpecialFolderEvent;
|
||||
|
@ -46,16 +48,16 @@ import com.google.gwt.user.client.ui.Label;
|
|||
* Jun 25, 2015
|
||||
*/
|
||||
public class WorkspaceExplorerController implements EventHandler {
|
||||
|
||||
|
||||
public final static HandlerManager eventBus = new HandlerManager(null);
|
||||
private WorkspaceExplorerPanel workspaceExplorerPanel;
|
||||
private WorkspaceExplorer wsExplorer;
|
||||
private Breadcrumbs breadcrumbs = new Breadcrumbs(eventBus);
|
||||
private Navigation navigation = new Navigation(eventBus);
|
||||
|
||||
|
||||
/**
|
||||
* Instantiates a new workspace explorer controller.
|
||||
*
|
||||
*
|
||||
* As default all items are showable and selectable
|
||||
* @param heightPanel the height panel
|
||||
*/
|
||||
|
@ -65,13 +67,13 @@ public class WorkspaceExplorerController implements EventHandler {
|
|||
wsExplorer = new WorkspaceExplorer(eventBus, ItemType.values(), ItemType.values());
|
||||
workspaceExplorerPanel = new WorkspaceExplorerPanel(5, wsExplorer.getPanel(), breadcrumbs, navigation, heightPanel);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Instantiates a new workspace explorer controller.
|
||||
*
|
||||
*
|
||||
* As default all items are showable and selectable
|
||||
*
|
||||
*
|
||||
* @param filterCriteria the filter criteria
|
||||
* @param heightPanel the height panel
|
||||
*/
|
||||
|
@ -86,12 +88,12 @@ public class WorkspaceExplorerController implements EventHandler {
|
|||
* Bind events.
|
||||
*/
|
||||
private void bindEvents() {
|
||||
|
||||
|
||||
eventBus.addHandler(LoadFolderEvent.TYPE, new LoadFolderEventHandler() {
|
||||
|
||||
|
||||
@Override
|
||||
public void onLoadFolder(LoadFolderEvent loadFolderEvent) {
|
||||
|
||||
|
||||
if(loadFolderEvent.getTargetItem()!=null && loadFolderEvent.getTargetItem().isFolder()){
|
||||
try {
|
||||
wsExplorer.loadFolder(loadFolderEvent.getTargetItem());
|
||||
|
@ -103,36 +105,36 @@ public class WorkspaceExplorerController implements EventHandler {
|
|||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
eventBus.addHandler(RootLoadedEvent.TYPE, new RootLoadedEventHandler() {
|
||||
|
||||
|
||||
@Override
|
||||
public void onRootLoaded(RootLoadedEvent rootLoadedEvent) {
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
eventBus.addHandler(BreadcrumbClickEvent.TYPE, new BreadcrumbClickEventHandler() {
|
||||
|
||||
|
||||
@Override
|
||||
public void onBreadcrumbClick(BreadcrumbClickEvent breadcrumbClickEvent) {
|
||||
WorkspaceExplorerController.eventBus.fireEvent(new LoadFolderEvent(breadcrumbClickEvent.getTargetItem()));
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
eventBus.addHandler(LoadRootEvent.TYPE, new LoadRootEventHandler() {
|
||||
|
||||
|
||||
@Override
|
||||
public void onLoadRoot(LoadRootEvent loadRootEvent) {
|
||||
wsExplorer.loadRoot();
|
||||
|
||||
|
||||
WorkspaceExplorerConstants.workspaceNavigatorService.getItemByCategory(ItemCategory.HOME, new AsyncCallback<Item>() {
|
||||
|
||||
@Override
|
||||
public void onFailure(Throwable caught) {
|
||||
GWT.log(caught.getMessage());
|
||||
breadcrumbs.clear();
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -144,22 +146,22 @@ public class WorkspaceExplorerController implements EventHandler {
|
|||
});
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
eventBus.addHandler(ClickItemEvent.TYPE, new ClickItemEventHandler() {
|
||||
|
||||
|
||||
@Override
|
||||
public void onClick(final ClickItemEvent clickItemEvent) {
|
||||
|
||||
|
||||
Item item = clickItemEvent.getItem();
|
||||
if(item!=null){
|
||||
updateMoreInfo(item);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
eventBus.addHandler(LoadMySpecialFolderEvent.TYPE, new LoadMySpecialFolderEventHandler() {
|
||||
|
||||
|
||||
@Override
|
||||
public void onLoadMySpecialFolder(LoadMySpecialFolderEvent loadMySpecialFolderEvent) {
|
||||
wsExplorer.loadMySpecialFolder();
|
||||
|
@ -179,6 +181,15 @@ public class WorkspaceExplorerController implements EventHandler {
|
|||
});
|
||||
}
|
||||
});
|
||||
|
||||
eventBus.addHandler(CreateFolderClickEvent.TYPE, new CreateFolderClickEventHandler() {
|
||||
|
||||
@Override
|
||||
public void onClick(CreateFolderClickEvent createFolderClickEvent) {
|
||||
|
||||
// TODO Auto-generated method stub
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -208,26 +219,26 @@ public class WorkspaceExplorerController implements EventHandler {
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Clear more info.
|
||||
*/
|
||||
private void clearMoreInfo(){
|
||||
workspaceExplorerPanel.getSouthPanel().clear();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Update more info.
|
||||
*
|
||||
* @param item the item
|
||||
*/
|
||||
private void updateMoreInfo(Item item){
|
||||
|
||||
|
||||
if(item!=null){
|
||||
workspaceExplorerPanel.getSouthPanel().clear();
|
||||
Alert alert = new Alert();
|
||||
alert.addStyleName("alert-custom");
|
||||
|
||||
|
||||
final HorizontalPanel hp = new HorizontalPanel();
|
||||
Image iconInfo = WorkspaceExplorerResources.getIconInfo().createImage();
|
||||
iconInfo.getElement().getStyle().setVerticalAlign(VerticalAlign.MIDDLE);
|
||||
|
@ -258,7 +269,7 @@ public class WorkspaceExplorerController implements EventHandler {
|
|||
labelSize.setText("Size: " +result);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
if(!item.isFolder()){
|
||||
WorkspaceExplorerConstants.workspaceNavigatorService.getMimeType(item.getId(), new AsyncCallback<String>() {
|
||||
|
||||
|
@ -273,7 +284,7 @@ public class WorkspaceExplorerController implements EventHandler {
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
WorkspaceExplorerConstants.workspaceNavigatorService.getUserACLForFolderId(item.getId(), new AsyncCallback<String>() {
|
||||
|
||||
@Override
|
||||
|
@ -290,7 +301,7 @@ public class WorkspaceExplorerController implements EventHandler {
|
|||
alert.setClose(false);
|
||||
workspaceExplorerPanel.getSouthPanel().add(alert); }
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the breadcrumbs.
|
||||
*
|
||||
|
@ -326,7 +337,7 @@ public class WorkspaceExplorerController implements EventHandler {
|
|||
public void setSelectableTypes(ItemType[] selectableTypes) {
|
||||
wsExplorer.setSelectableTypes(selectableTypes);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Gets the selectable types.
|
||||
*
|
||||
|
@ -365,7 +376,7 @@ public class WorkspaceExplorerController implements EventHandler {
|
|||
GWT.log("item: "+item);
|
||||
if (item!=null){
|
||||
boolean selectable = wsExplorer.getSelectableTypes().contains(item.getType());
|
||||
return (selectable)?true:false;
|
||||
return selectable?true:false;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/**
|
||||
*
|
||||
*
|
||||
*/
|
||||
package org.gcube.portlets.widgets.wsexplorer.client;
|
||||
|
||||
|
@ -15,11 +15,11 @@ import com.google.gwt.user.client.ui.ScrollPanel;
|
|||
* Jun 23, 2015
|
||||
*/
|
||||
public class WorkspaceExplorerPanel extends DockPanel{
|
||||
|
||||
|
||||
public int width = 550;
|
||||
// public int height = 400;
|
||||
public int west_width = 150;
|
||||
|
||||
|
||||
private ScrollPanel westPanel = new ScrollPanel();
|
||||
private ScrollPanel centerScrollable = new ScrollPanel();
|
||||
private ScrollPanel southPanel = new ScrollPanel();
|
||||
|
@ -34,12 +34,12 @@ public class WorkspaceExplorerPanel extends DockPanel{
|
|||
*/
|
||||
public WorkspaceExplorerPanel(int splitterSize, ScrollPanel wsExplorer, Composite breadcrumbs, Composite navigation, String height) {
|
||||
ensureDebugId("WorkspaceNavigatorPanel");
|
||||
|
||||
|
||||
add(breadcrumbs, DockPanel.NORTH);
|
||||
|
||||
southPanel.ensureDebugId("SouthPanelWEP");
|
||||
|
||||
// southPanel.ensureDebugId("SouthPanelWEP");
|
||||
add(southPanel, DockPanel.SOUTH);
|
||||
|
||||
|
||||
westPanel.setWidth(west_width+"px");
|
||||
westPanel.add(navigation);
|
||||
add(westPanel, DockPanel.WEST);
|
||||
|
@ -73,7 +73,4 @@ public class WorkspaceExplorerPanel extends DockPanel{
|
|||
public ScrollPanel getCenterScrollable() {
|
||||
return centerScrollable;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,36 @@
|
|||
package org.gcube.portlets.widgets.wsexplorer.client.event;
|
||||
|
||||
import com.google.gwt.event.shared.GwtEvent;
|
||||
|
||||
|
||||
/**
|
||||
* The Class CreateFolderClickEvent.
|
||||
*
|
||||
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
|
||||
* Feb 1, 2016
|
||||
*/
|
||||
public class CreateFolderClickEvent extends GwtEvent<CreateFolderClickEventHandler> {
|
||||
public static Type<CreateFolderClickEventHandler> TYPE = new Type<CreateFolderClickEventHandler>();
|
||||
|
||||
/**
|
||||
* Instantiates a new click item event.
|
||||
*/
|
||||
public CreateFolderClickEvent() {
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.google.gwt.event.shared.GwtEvent#getAssociatedType()
|
||||
*/
|
||||
@Override
|
||||
public Type<CreateFolderClickEventHandler> getAssociatedType() {
|
||||
return TYPE;
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see com.google.gwt.event.shared.GwtEvent#dispatch(com.google.gwt.event.shared.EventHandler)
|
||||
*/
|
||||
@Override
|
||||
protected void dispatch(CreateFolderClickEventHandler handler) {
|
||||
handler.onClick(this);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
package org.gcube.portlets.widgets.wsexplorer.client.event;
|
||||
|
||||
import com.google.gwt.event.shared.EventHandler;
|
||||
|
||||
|
||||
/**
|
||||
* The Interface ClickItemEventHandler.
|
||||
*
|
||||
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
|
||||
* Jul 6, 2015
|
||||
*/
|
||||
public interface CreateFolderClickEventHandler extends EventHandler {
|
||||
|
||||
/**
|
||||
* On click.
|
||||
*
|
||||
* @param createFolderClickEvent the more info show event
|
||||
*/
|
||||
void onClick(CreateFolderClickEvent createFolderClickEvent);
|
||||
}
|
|
@ -115,8 +115,8 @@ public interface WorkspaceExplorerService extends RemoteService {
|
|||
* @throws Exception the exception
|
||||
*/
|
||||
String getUserACLForFolderId(String folderId) throws Exception;
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Gets the readable size by item id.
|
||||
*
|
||||
|
@ -136,4 +136,18 @@ public interface WorkspaceExplorerService extends RemoteService {
|
|||
List<Item> getBreadcrumbsByItemIdentifierToParentLimit(
|
||||
String itemIdentifier, String parentLimit,
|
||||
boolean includeItemAsParent) throws Exception;
|
||||
|
||||
/**
|
||||
* @param nameFolder
|
||||
* @param description
|
||||
* @param parentId
|
||||
* @param showableTypes
|
||||
* @param filterCriteria
|
||||
* @return
|
||||
* @throws Exception
|
||||
*/
|
||||
Item createFolder(
|
||||
String nameFolder, String description, String parentId,
|
||||
List<ItemType> showableTypes, FilterCriteria filterCriteria)
|
||||
throws Exception;
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/**
|
||||
*
|
||||
*
|
||||
*/
|
||||
package org.gcube.portlets.widgets.wsexplorer.client.rpc;
|
||||
|
||||
|
@ -66,7 +66,7 @@ public interface WorkspaceExplorerServiceAsync {
|
|||
boolean purgeEmpyFolders, FilterCriteria filterCriteria,
|
||||
AsyncCallback<Item> callback);
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Gets the breadcrumbs by item identifier.
|
||||
*
|
||||
|
@ -88,7 +88,7 @@ public interface WorkspaceExplorerServiceAsync {
|
|||
* @return the my special folder
|
||||
*/
|
||||
public void getMySpecialFolder(List<ItemType> showableTypes, boolean purgeEmpyFolders, FilterCriteria filterCriteria, AsyncCallback<Item> asyncCallback);
|
||||
|
||||
|
||||
/**
|
||||
* Gets the item by category.
|
||||
*
|
||||
|
@ -106,7 +106,7 @@ public interface WorkspaceExplorerServiceAsync {
|
|||
* @return the size by item id
|
||||
*/
|
||||
public void getSizeByItemId(String id, AsyncCallback<Long> asyncCallback);
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Gets the readable size by item id.
|
||||
|
@ -140,4 +140,9 @@ public interface WorkspaceExplorerServiceAsync {
|
|||
String parentLimit, boolean includeItemAsParent,
|
||||
AsyncCallback<List<Item>> callback);
|
||||
|
||||
void createFolder(
|
||||
String nameFolder, String description, String parentId,
|
||||
List<ItemType> showableTypes, FilterCriteria filterCriteria,
|
||||
AsyncCallback<Item> callback);
|
||||
|
||||
}
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
/**
|
||||
*
|
||||
*
|
||||
*/
|
||||
package org.gcube.portlets.widgets.wsexplorer.client.view;
|
||||
|
||||
import org.gcube.portlets.widgets.wsexplorer.client.WorkspaceExplorerConstants;
|
||||
import org.gcube.portlets.widgets.wsexplorer.client.event.CreateFolderClickEvent;
|
||||
import org.gcube.portlets.widgets.wsexplorer.client.event.LoadMySpecialFolderEvent;
|
||||
import org.gcube.portlets.widgets.wsexplorer.client.event.LoadRootEvent;
|
||||
import org.gcube.portlets.widgets.wsexplorer.client.resources.WorkspaceExplorerResources;
|
||||
|
@ -20,23 +21,30 @@ import com.google.gwt.uibinder.client.UiBinder;
|
|||
import com.google.gwt.uibinder.client.UiField;
|
||||
import com.google.gwt.user.client.rpc.AsyncCallback;
|
||||
import com.google.gwt.user.client.ui.Composite;
|
||||
import com.google.gwt.user.client.ui.FlowPanel;
|
||||
import com.google.gwt.user.client.ui.Widget;
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
|
||||
* Jun 24, 2015
|
||||
*/
|
||||
public class Navigation extends Composite{
|
||||
|
||||
|
||||
private static NavigationUiBinder uiBinder = GWT.create(NavigationUiBinder.class);
|
||||
|
||||
|
||||
@UiField
|
||||
FlowPanel navigation;
|
||||
|
||||
@UiField
|
||||
NavWidget home;
|
||||
|
||||
|
||||
@UiField
|
||||
NavWidget vre_folder;
|
||||
|
||||
@UiField
|
||||
NavWidget new_folder;
|
||||
|
||||
private HandlerManager eventBus;
|
||||
|
||||
/**
|
||||
|
@ -47,67 +55,78 @@ public class Navigation extends Composite{
|
|||
*/
|
||||
interface NavigationUiBinder extends UiBinder<Widget, Navigation> {
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @param eventbus
|
||||
*
|
||||
* @param eventbus
|
||||
*
|
||||
*/
|
||||
public Navigation(HandlerManager eventBus) {
|
||||
initWidget(uiBinder.createAndBindUi(this));
|
||||
this.eventBus = eventBus;
|
||||
getElement().getStyle().setMarginLeft(5.0, Unit.PX);
|
||||
home.setActive(true);
|
||||
|
||||
|
||||
WorkspaceExplorerConstants.workspaceNavigatorService.getItemByCategory(ItemCategory.HOME, new AsyncCallback<Item>() {
|
||||
|
||||
|
||||
@Override
|
||||
public void onSuccess(Item result) {
|
||||
home.setText(result.getName());
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void onFailure(Throwable caught) {
|
||||
GWT.log(caught.getMessage());
|
||||
home.setText(WorkspaceExplorerConstants.HOME_LABEL);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
home.setBaseIcon(WorkspaceExplorerResources.CustomIconType.home);
|
||||
home.addClickHandler(new ClickHandler() {
|
||||
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
Navigation.this.eventBus.fireEvent(new LoadRootEvent());
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
vre_folder.setActive(true);
|
||||
vre_folder.setBaseIcon(WorkspaceExplorerResources.CustomIconType.vre_folder);
|
||||
|
||||
|
||||
WorkspaceExplorerConstants.workspaceNavigatorService.getItemByCategory(ItemCategory.VRE_FOLDER, new AsyncCallback<Item>() {
|
||||
|
||||
|
||||
@Override
|
||||
public void onSuccess(Item result) {
|
||||
vre_folder.setText(result.getName());
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void onFailure(Throwable caught) {
|
||||
GWT.log(caught.getMessage());
|
||||
vre_folder.setText(WorkspaceExplorerConstants.VRE_FOLDERS_LABEL);
|
||||
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
vre_folder.addClickHandler(new ClickHandler() {
|
||||
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
Navigation.this.eventBus.fireEvent(new LoadMySpecialFolderEvent());
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
new_folder.setActive(true);
|
||||
new_folder.setBaseIcon(WorkspaceExplorerResources.CustomIconType.new_folder);
|
||||
new_folder.addClickHandler(new ClickHandler() {
|
||||
|
||||
@Override
|
||||
public void onClick(ClickEvent event) {
|
||||
Navigation.this.eventBus.fireEvent(new CreateFolderClickEvent());
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,5 +6,7 @@
|
|||
</b:NavWidget>
|
||||
<b:NavWidget ui:field="vre_folder">
|
||||
</b:NavWidget>
|
||||
<b:NavWidget ui:field="new_folder" text="New Folder">
|
||||
</b:NavWidget>
|
||||
</g:FlowPanel>
|
||||
</ui:UiBinder>
|
|
@ -18,6 +18,8 @@ import org.gcube.common.homelibrary.home.workspace.Workspace;
|
|||
import org.gcube.common.homelibrary.home.workspace.WorkspaceFolder;
|
||||
import org.gcube.common.homelibrary.home.workspace.WorkspaceItem;
|
||||
import org.gcube.common.homelibrary.home.workspace.WorkspaceSharedFolder;
|
||||
import org.gcube.common.homelibrary.home.workspace.exceptions.InsufficientPrivilegesException;
|
||||
import org.gcube.common.homelibrary.home.workspace.exceptions.ItemAlreadyExistException;
|
||||
import org.gcube.common.homelibrary.home.workspace.exceptions.WorkspaceFolderNotFoundException;
|
||||
import org.gcube.common.homelibrary.home.workspace.folder.FolderItem;
|
||||
import org.gcube.portlets.widgets.wsexplorer.client.WorkspaceExplorerConstants;
|
||||
|
@ -596,4 +598,42 @@ public class WorkspaceExplorerServiceImpl extends RemoteServiceServlet implement
|
|||
throw new Exception(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public Item createFolder(String nameFolder, String description, String parentId, List<ItemType> showableTypes,FilterCriteria filterCriteria) throws Exception {
|
||||
|
||||
_log.trace("creating folder: "+nameFolder +" parent is null?"+parentId);
|
||||
|
||||
try {
|
||||
|
||||
if(parentId==null || parentId.isEmpty())
|
||||
throw new Exception("Parent id is null or empty");
|
||||
|
||||
if(nameFolder == null)
|
||||
nameFolder = "Empty Folder";
|
||||
|
||||
Workspace workspace = getWorkspace();
|
||||
WorkspaceFolder wsFolder = workspace.createFolder(nameFolder, description, parentId);
|
||||
Item itemFolder = null;
|
||||
if(wsFolder!=null){
|
||||
itemFolder = ItemBuilder.getItem(null, wsFolder, showableTypes, filterCriteria, false);
|
||||
}
|
||||
|
||||
return itemFolder;
|
||||
|
||||
} catch(InsufficientPrivilegesException e){
|
||||
String error = "Insufficient Privileges to create the folder";
|
||||
_log.error(error, e);
|
||||
throw new Exception(error);
|
||||
} catch (ItemAlreadyExistException e) {
|
||||
String error = "An error occurred on creating folder, " +e.getMessage();
|
||||
_log.error(error, e);
|
||||
throw new Exception(error);
|
||||
} catch (Exception e) {
|
||||
String error = "An error occurred on the sever during creating folder. Try again";
|
||||
_log.error(error, e);
|
||||
throw new Exception(error);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue