diff --git a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/StatAlgoImporterController.java b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/StatAlgoImporterController.java index 1bd6a15..3a1f39c 100644 --- a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/StatAlgoImporterController.java +++ b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/StatAlgoImporterController.java @@ -34,7 +34,10 @@ import com.google.gwt.user.client.Cookies; import com.google.gwt.user.client.Timer; import com.google.gwt.user.client.Window; import com.google.gwt.user.client.rpc.AsyncCallback; +import com.sencha.gxt.widget.core.client.box.ConfirmMessageBox; import com.sencha.gxt.widget.core.client.container.BorderLayoutContainer; +import com.sencha.gxt.widget.core.client.event.DialogHideEvent; +import com.sencha.gxt.widget.core.client.event.DialogHideEvent.DialogHideHandler; /** * @@ -335,11 +338,34 @@ public class StatAlgoImporterController { } private void softwareCreateRequest() { - monitor = new StatAlgoImporterMonitor(); - inputRequestType = InputRequestType.SoftwareCreate; - InputRequestEvent inputRequestEvent = new InputRequestEvent(); - eventBus.fireEvent(inputRequestEvent); - Log.debug("SoftwareCreateRequest: " + inputRequestEvent); + + final ConfirmMessageBox mb = new ConfirmMessageBox( + "Warning", + "The creation of new software will overwrite the possible" + + " previous version and will require publication again." + + " Do you want to proceed anyway?"); + mb.addDialogHideHandler(new DialogHideHandler() { + + @Override + public void onDialogHide(DialogHideEvent event) { + switch (event.getHideButton()) { + case NO: + break; + case YES: + monitor = new StatAlgoImporterMonitor(); + inputRequestType = InputRequestType.SoftwareCreate; + InputRequestEvent inputRequestEvent = new InputRequestEvent(); + eventBus.fireEvent(inputRequestEvent); + Log.debug("SoftwareCreateRequest: " + inputRequestEvent); + break; + default: + break; + } + + } + }); + mb.setWidth(300); + mb.show(); } private void softwarePublish() { diff --git a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/project/ProjectManager.java b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/project/ProjectManager.java index 380e776..a649b61 100644 --- a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/project/ProjectManager.java +++ b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/project/ProjectManager.java @@ -320,9 +320,8 @@ public class ProjectManager { }); } - public void createSofware(InputData inputData, + public void createSofware(final InputData inputData, final StatAlgoImporterMonitor monitor) { - Log.debug("Create Software: " + inputData); StatAlgoImporterServiceAsync.INSTANCE.createSoftware(inputData, new AsyncCallback() { diff --git a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/server/storage/ProjectArchiver.java b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/server/storage/ProjectArchiver.java index e500796..08df800 100644 --- a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/server/storage/ProjectArchiver.java +++ b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/server/storage/ProjectArchiver.java @@ -10,13 +10,13 @@ import org.gcube.application.framework.core.session.ASLSession; import org.gcube.common.homelibrary.home.exceptions.InternalErrorException; import org.gcube.common.homelibrary.home.workspace.WorkspaceItem; import org.gcube.portlets.user.statisticalalgorithmsimporter.shared.exception.StatAlgoImporterServiceException; +import org.gcube.portlets.user.statisticalalgorithmsimporter.shared.project.MainCode; import org.gcube.portlets.user.statisticalalgorithmsimporter.shared.project.Project; import org.gcube.portlets.user.statisticalalgorithmsimporter.shared.project.ProjectFolder; import org.gcube.portlets.user.statisticalalgorithmsimporter.shared.workspace.ItemDescription; import org.slf4j.Logger; import org.slf4j.LoggerFactory; - /** * * @author Giancarlo Panichi email: