diff --git a/.classpath b/.classpath index 5392fa2..2252298 100644 --- a/.classpath +++ b/.classpath @@ -22,7 +22,7 @@ - + diff --git a/pom.xml b/pom.xml index 00bf52a..139ed63 100644 --- a/pom.xml +++ b/pom.xml @@ -43,9 +43,10 @@ config ${project.build.directory}/${project.build.finalName} + 1.7 - + 1.8 2.6.1 @@ -206,7 +207,7 @@ json 20170516 - + org.gcube.portal @@ -403,7 +404,17 @@ - + + + + org.apache.maven.plugins + maven-compiler-plugin + 2.3.2 + + ${maven.compiler.source} + ${maven.compiler.target} + + org.apache.maven.plugins 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 99253e7..837aba6 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 @@ -63,8 +63,6 @@ public class StatAlgoImporterController { private NewCodeEvent newCodeEvent; private ItemDescription mainCodeItemDescription; private ItemDescription binaryCodeItemDescription; - - public StatAlgoImporterController() { eventBus = new SimpleEventBus(); @@ -260,7 +258,7 @@ public class StatAlgoImporterController { if (eventType == null) { return; } - Log.info("StatAlgoRibbonEvent: " + event); + Log.info("StatAlgoRibbonEvent type: " + event); switch (eventType) { case PROJECT_CREATE: @@ -304,10 +302,11 @@ public class StatAlgoImporterController { public void onSuccess(TextResource r) { String s = r.getText(); - //Window.open(s, "Statistical Algorithms Importer Wiki", ""); + // Window.open(s, "Statistical Algorithms Importer Wiki", + // ""); BrowserWindowSupport browserWindowSupport = BrowserWindowSupport.open("", "_blank", ""); browserWindowSupport.setUrl(s); - + } }); } catch (ResourceException e) { @@ -320,43 +319,50 @@ public class StatAlgoImporterController { } private void doInputReadyCommand(InputReadyEvent event) { - if (!event.isValidData()) { - if (monitor != null) { - monitor.hide(); + if (event != null) { + if (!event.isValidData()) { + if (monitor != null) { + monitor.hide(); + } + Log.debug("Input not ready, invalid data."); + Log.debug("InputReadyEvent: " + event); + UtilsGXT3.alert("Attention", event.getError()); + } else { + Log.info("Input Ready: " + inputRequestType); + if (inputRequestType == null) { + Log.debug("InputRequestType is null"); + return; + } + + switch (inputRequestType) { + case Save: + pm.saveProject(event.getInputData(), monitor); + break; + case SoftwareCreate: + pm.softwareCreate(event.getInputData(), monitor); + break; + case NewMainCodeSet: + pm.setNewCode(event.getInputData(), newCodeEvent, monitor); + break; + case MainCodeSet: + pm.setMainCode(event.getInputData(), mainCodeItemDescription); + break; + case BinaryCodeSet: + pm.setBinaryCode(event.getInputData(), binaryCodeItemDescription); + break; + default: + break; + + } } - UtilsGXT3.alert("Attention", event.getError()); - return; } else { - Log.info("Input Ready: "+inputRequestType); - if (inputRequestType == null) { - return; - } - - switch (inputRequestType) { - case Save: - pm.saveProject(event.getInputData(), monitor); - break; - case SoftwareCreate: - pm.softwareCreate(event.getInputData(), monitor); - break; - case NewMainCodeSet: - pm.setNewCode(event.getInputData(),newCodeEvent, monitor); - break; - case MainCodeSet: - pm.setMainCode(event.getInputData(), mainCodeItemDescription); - break; - case BinaryCodeSet: - pm.setBinaryCode(event.getInputData(), binaryCodeItemDescription); - break; - default: - break; - - } + Log.debug("InputReadyEvent is null"); } } private void projectSaveRequest() { + Log.debug("Project Save request"); monitor = new StatAlgoImporterMonitor(); inputRequestType = InputRequestType.Save; InputRequestEvent inputRequestEvent = new InputRequestEvent(); @@ -366,8 +372,8 @@ public class StatAlgoImporterController { } private void softwareCreateRequest() { - - final ConfirmMessageBox mb = new ConfirmMessageBox("Attention", + Log.debug("SoftwareCreateRequest call"); + ConfirmMessageBox mb = new ConfirmMessageBox("Attention", "The creation of new software will overwrite the possible previous version, moreover" + " the compiled software will be notified to the Infrastructure Administrators" + " and will be published in the suggested VREs. The source code will not be shared." @@ -376,26 +382,33 @@ public class StatAlgoImporterController { @Override public void onDialogHide(DialogHideEvent event) { + Log.debug("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); + softwareCreateRetrieveInfo(); break; default: break; } - + } + + }); mb.setWidth(300); mb.show(); } + private void softwareCreateRetrieveInfo() { + monitor = new StatAlgoImporterMonitor(); + inputRequestType = InputRequestType.SoftwareCreate; + InputRequestEvent inputRequestEvent = new InputRequestEvent(); + Log.debug("SoftwareCreateRequest fire: " + inputRequestEvent); + eventBus.fireEvent(inputRequestEvent); + } + private void softwareRepackage() { pm.softwareRepackage(); @@ -420,42 +433,43 @@ public class StatAlgoImporterController { } private void doMainCodeSetCommand(MainCodeSetEvent event) { + Log.debug("MainCodeSetEvent: "+event); ItemDescription mainCodeItemDesc = event.getItemDescription(); if (mainCodeItemDesc != null && mainCodeItemDesc.getId() != null) { mainCodeItemDescription = mainCodeItemDesc; inputRequestType = InputRequestType.MainCodeSet; InputRequestEvent inputRequestEvent = new InputRequestEvent(); - eventBus.fireEvent(inputRequestEvent); Log.debug("ProjectMainCodeSetRequest: " + inputRequestEvent); + eventBus.fireEvent(inputRequestEvent); } } private void doBinaryCodeSetCommand(BinaryCodeSetEvent event) { + Log.debug("BinaryCodeSetEvent: "+event); ItemDescription binaryCodeItemDesc = event.getItemDescription(); if (binaryCodeItemDesc != null && binaryCodeItemDesc.getId() != null) { binaryCodeItemDescription = binaryCodeItemDesc; inputRequestType = InputRequestType.BinaryCodeSet; InputRequestEvent inputRequestEvent = new InputRequestEvent(); - eventBus.fireEvent(inputRequestEvent); Log.debug("ProjectBinaryCodeSetRequest: " + inputRequestEvent); + eventBus.fireEvent(inputRequestEvent); } } private void doSetNewMainCodeEvent(NewCodeEvent event) { + Log.debug("NewCodeEvent "+event); monitor = new StatAlgoImporterMonitor(); newCodeEvent = event; inputRequestType = InputRequestType.NewMainCodeSet; InputRequestEvent inputRequestEvent = new InputRequestEvent(); - eventBus.fireEvent(inputRequestEvent); Log.debug("ProjectNewMainCodeSetRequest: " + inputRequestEvent); + eventBus.fireEvent(inputRequestEvent); } - - private void doDeleteItemCommand(DeleteItemEvent event) { ItemDescription itemDescription = event.getItemDescription(); if (itemDescription != null && itemDescription.getId() != null) { diff --git a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/event/InputRequestEvent.java b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/event/InputRequestEvent.java index 8f5219b..1ad9cbc 100644 --- a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/event/InputRequestEvent.java +++ b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/event/InputRequestEvent.java @@ -13,22 +13,21 @@ import com.google.gwt.event.shared.HasHandlers; * * */ -public class InputRequestEvent extends - GwtEvent { +public class InputRequestEvent extends GwtEvent { public static Type TYPE = new Type(); + private boolean requested; public interface InputRequestEventHandler extends EventHandler { void onInputRequest(InputRequestEvent event); } public interface HasInputRequestEventHandler extends HasHandlers { - public HandlerRegistration addInputRequestEventHandler( - InputRequestEventHandler handler); + public HandlerRegistration addInputRequestEventHandler(InputRequestEventHandler handler); } public InputRequestEvent() { - + requested = true; } @Override @@ -41,19 +40,13 @@ public class InputRequestEvent extends return TYPE; } - public static Type getType() { - return TYPE; - } - - public static void fire(HasHandlers source, InputRequestEvent inputSaveEvent) { - source.fireEvent(inputSaveEvent); + public boolean isRequested() { + return requested; } @Override public String toString() { - return "InputRequestEvent []"; + return "InputRequestEvent [requested=" + requested + "]"; } - - } 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 af241bb..de135d2 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 @@ -375,7 +375,7 @@ public class ProjectManager { } public void softwareCreate(final InputData inputData, final StatAlgoImporterMonitor monitor) { - + Log.debug("SoftwareCreate On Server"); StatAlgoImporterServiceAsync.INSTANCE.createSoftware(inputData, new AsyncCallback() { @Override @@ -390,14 +390,13 @@ public class ProjectManager { public void onFailure(Throwable caught) { monitor.hide(); if (caught instanceof StatAlgoImporterSessionExpiredException) { + Log.error("Session Expired"); eventBus.fireEvent(new SessionExpiredEvent(SessionExpiredType.EXPIREDONSERVER)); } else { - Log.error("Error in create software: " + caught.getLocalizedMessage()); + Log.error("Error in create software: " + caught.getLocalizedMessage(),caught); UtilsGXT3.alert("Error", caught.getLocalizedMessage()); fireProjectStatusExplorerRefreshEvent(); - } - caught.printStackTrace(); } }); @@ -727,6 +726,7 @@ public class ProjectManager { } private void softwarePublish(final StatAlgoImporterMonitor monitor) { + Log.debug("SoftwarePublish invocation"); if (project != null) { softwarePublishOnServer(monitor); @@ -740,7 +740,7 @@ public class ProjectManager { // TODO private void softwarePublishOnServer(final StatAlgoImporterMonitor monitor) { - Log.info("Software Publish On Server"); + Log.info("SoftwarePublish On Server"); StatAlgoImporterServiceAsync.INSTANCE.publishSoftware(new AsyncCallback() { public void onFailure(Throwable caught) { diff --git a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/ribbon/HomeToolBar.java b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/ribbon/HomeToolBar.java index b5966d0..8789da0 100644 --- a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/ribbon/HomeToolBar.java +++ b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/ribbon/HomeToolBar.java @@ -420,7 +420,7 @@ public class HomeToolBar { break; } } catch (Exception e) { - Log.error("setUI Error : " + e.getLocalizedMessage()); + Log.error("setUI Error : " + e.getLocalizedMessage(),e); } } } diff --git a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/tools/ToolsPanel.java b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/tools/ToolsPanel.java index 8aaf78c..7987c62 100644 --- a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/tools/ToolsPanel.java +++ b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/tools/ToolsPanel.java @@ -35,6 +35,7 @@ public class ToolsPanel extends ContentPanel { } protected void init() { + setId("ToolsPanel"); forceLayoutOnResize = true; setHeaderVisible(false); setResize(true); diff --git a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/tools/input/InputVariablePanel.java b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/tools/input/InputVariablePanel.java index 7dd6e8b..7bf83d1 100644 --- a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/tools/input/InputVariablePanel.java +++ b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/tools/input/InputVariablePanel.java @@ -73,7 +73,7 @@ public class InputVariablePanel extends ContentPanel { @Override public void onInputRequest(InputRequestEvent event) { - Log.debug("Catch InputRequestEvent"); + Log.debug("InputVariablePanel Catch InputRequestEvent"); manageInputRequestEvents(event); } diff --git a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/workarea/WorkAreaPanel.java b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/workarea/WorkAreaPanel.java index c1bee87..ad8efa5 100644 --- a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/workarea/WorkAreaPanel.java +++ b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/client/workarea/WorkAreaPanel.java @@ -29,7 +29,10 @@ import com.sencha.gxt.widget.core.client.container.SimpleContainer; public class WorkAreaPanel extends SimpleContainer { private EventBus eventBus; - + private static MainDataPanel mainDataPanel; + private static ToolsPanel toolsPanel; + private static BorderLayoutContainer mainPanelLayout; + public WorkAreaPanel(EventBus eventBus) { super(); this.eventBus = eventBus; @@ -44,6 +47,7 @@ public class WorkAreaPanel extends SimpleContainer { } private void create() { + Log.debug("WorkAreaPanel created"); // addStyleName(StatAlgoImporterResources.INSTANCE.saiStyles().getWorkAreaPanel()); // Image logo = new Image(StatAlgoImporterResources.INSTANCE.saiLogo()); // logo.addStyleName(StatAlgoImporterResources.INSTANCE.saiStyles().getLogo()); @@ -113,25 +117,25 @@ public class WorkAreaPanel extends SimpleContainer { } private void createBlackBoxArea(Project project) { - ToolsPanel toolsPanel = new ToolsPanel(eventBus); + toolsPanel = new ToolsPanel(eventBus); clear(); add(toolsPanel); } private void createRArea(Project project) { // Main Panel - BorderLayoutContainer mainPanelLayout = new BorderLayoutContainer(); + mainPanelLayout = new BorderLayoutContainer(); // mainPanelLayout.setId("mainPanelLayout"); mainPanelLayout.setBorders(false); mainPanelLayout.setResize(true); // Main - final MainDataPanel mainDataPanel = new MainDataPanel(eventBus); + mainDataPanel = new MainDataPanel(eventBus); MarginData mainData = new MarginData(new Margins(2)); mainPanelLayout.setCenterWidget(mainDataPanel, mainData); // Right - ToolsPanel toolsPanel = new ToolsPanel(eventBus); + toolsPanel = new ToolsPanel(eventBus); BorderLayoutData eastData = new BorderLayoutData(500); eastData.setCollapsible(true); eastData.setSplit(false); @@ -151,18 +155,18 @@ public class WorkAreaPanel extends SimpleContainer { private void createBashArea(Project project) { // Main Panel - BorderLayoutContainer mainPanelLayout = new BorderLayoutContainer(); + mainPanelLayout = new BorderLayoutContainer(); // mainPanelLayout.setId("mainPanelLayout"); mainPanelLayout.setBorders(false); mainPanelLayout.setResize(true); // Main - final MainDataPanel mainDataPanel = new MainDataPanel(eventBus); + mainDataPanel = new MainDataPanel(eventBus); MarginData mainData = new MarginData(new Margins(2)); mainPanelLayout.setCenterWidget(mainDataPanel, mainData); // Right - ToolsPanel toolsPanel = new ToolsPanel(eventBus); + toolsPanel = new ToolsPanel(eventBus); BorderLayoutData eastData = new BorderLayoutData(500); eastData.setCollapsible(true); eastData.setSplit(false); @@ -174,10 +178,9 @@ public class WorkAreaPanel extends SimpleContainer { mainPanelLayout.setEastWidget(toolsPanel, eastData); toolsPanel.enable(); toolsPanel.collapse(); - clear(); add(mainPanelLayout); - + } private void fireProjectStatusOpenEvent(final Project project) { diff --git a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/server/storage/FilesStorage.java b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/server/storage/FilesStorage.java index d2174a3..31f6c05 100644 --- a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/server/storage/FilesStorage.java +++ b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/server/storage/FilesStorage.java @@ -772,7 +772,7 @@ public class FilesStorage { if (folderItem instanceof SharedFolder) { SharedFolder sharedFolder = (SharedFolder) folderItem; Metadata metadata = sharedFolder.getUsers(); - shared = new ArrayList<>(metadata.getValues().keySet()); + shared = new ArrayList<>(metadata.getMap().keySet()); } else { logger.error("The folder is shared but is not of type SharedFolder: [itemId=" + itemId + "]"); if (folderItem.getOwner() != null && !folderItem.getOwner().isEmpty()) { diff --git a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/statalgoimporter.gwt.xml b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/statalgoimporter.gwt.xml index f84ba45..3b72680 100644 --- a/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/statalgoimporter.gwt.xml +++ b/src/main/java/org/gcube/portlets/user/statisticalalgorithmsimporter/statalgoimporter.gwt.xml @@ -22,8 +22,7 @@ - @@ -38,8 +37,8 @@ - - + + @@ -55,19 +54,17 @@ name="locale" values="es" /> --> - + /> --> - - + diff --git a/src/main/resources/org/gcube/portlets/user/statisticalalgorithmsimporter/statalgoimporter.gwt.xml b/src/main/resources/org/gcube/portlets/user/statisticalalgorithmsimporter/statalgoimporter.gwt.xml index 6946436..0f88deb 100644 --- a/src/main/resources/org/gcube/portlets/user/statisticalalgorithmsimporter/statalgoimporter.gwt.xml +++ b/src/main/resources/org/gcube/portlets/user/statisticalalgorithmsimporter/statalgoimporter.gwt.xml @@ -23,9 +23,8 @@ - + @@ -38,9 +37,8 @@ name="org.gcube.portlets.widgets.workspaceuploader.WorkspaceUploader" /> - - + + --> - - - - +