diff --git a/.classpath b/.classpath
index 0bc30bd..69f566e 100644
--- a/.classpath
+++ b/.classpath
@@ -1,6 +1,6 @@
-
+
@@ -30,5 +30,5 @@
-
+
diff --git a/.settings/com.google.gdt.eclipse.core.prefs b/.settings/com.google.gdt.eclipse.core.prefs
index 7d8b97a..cca5490 100644
--- a/.settings/com.google.gdt.eclipse.core.prefs
+++ b/.settings/com.google.gdt.eclipse.core.prefs
@@ -1,8 +1,8 @@
-#Wed Mar 13 19:15:40 CET 2013
+#Thu Mar 14 19:06:34 CET 2013
=\=\=\=\=\=\=
<<<<<<<=.mine
>>>>>>>=.r71295
eclipse.preferences.version=1
-lastWarOutDir=/Users/massi/Documents/workspace/reports/target/reports-4.1.0-SNAPSHOT
+lastWarOutDir=/Users/massi/Documents/workspace/reports/target/reports-4.1.1-SNAPSHOT
warSrcDir=src/main/webapp
warSrcDirIsOutput=false
diff --git a/pom.xml b/pom.xml
index 0892279..0a1870f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -12,7 +12,7 @@
org.gcube.portlets.user
reports
war
- 4.1.0-SNAPSHOT
+ 4.1.2-SNAPSHOT
gCube Reports Portlet
gCube Reports Portlet.
diff --git a/src/main/java/org/gcube/portlets/user/reportgenerator/client/Headerbar.java b/src/main/java/org/gcube/portlets/user/reportgenerator/client/Headerbar.java
index e2ab57d..91ebb7a 100644
--- a/src/main/java/org/gcube/portlets/user/reportgenerator/client/Headerbar.java
+++ b/src/main/java/org/gcube/portlets/user/reportgenerator/client/Headerbar.java
@@ -19,11 +19,6 @@ import org.gcube.portlets.user.workspace.lighttree.client.load.WorkspaceLightTre
import com.extjs.gxt.ui.client.widget.MessageBox;
import com.google.gwt.core.client.GWT;
import com.google.gwt.core.client.RunAsyncCallback;
-import com.google.gwt.http.client.Request;
-import com.google.gwt.http.client.RequestBuilder;
-import com.google.gwt.http.client.RequestCallback;
-import com.google.gwt.http.client.RequestException;
-import com.google.gwt.http.client.Response;
import com.google.gwt.user.client.Command;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.CellPanel;
@@ -381,7 +376,7 @@ public class Headerbar extends Composite{
};
Command showReportStructure = new Command() {
- public void execute() {
+ public void execute() {
presenter.showReportStructure();
}
};
@@ -646,12 +641,9 @@ public class Headerbar extends Composite{
}
};
- Command generateEncryptedModel = new Command() {
-
+ Command generateEncryptedModel = new Command() {
@Override
- public void execute() {
-
-
+ public void execute() {
GWT.runAsync(WorkspaceLightTreeLoadPopup.class, new RunAsyncCallback() {
public void onSuccess() {
WorkspaceLightTreeLoadPopup wpTreepopup = new WorkspaceLightTreeLoadPopup("Select the Report (or Template) to encrypt ", true, true);
@@ -692,7 +684,18 @@ public class Headerbar extends Composite{
//************** COMMANDS ********************************////
Command addBiblioEntryCommand = new Command() {
public void execute() {
- presenter.openAddCitationDialog();
+ GWT.runAsync(new RunAsyncCallback() {
+
+ @Override
+ public void onSuccess() {
+ presenter.openAddCitationDialog();
+ }
+
+ @Override
+ public void onFailure(Throwable reason) {
+ }
+ });
+
}
};
@@ -701,25 +704,36 @@ public class Headerbar extends Composite{
*/
Command openMetadata = new Command() {
public void execute() {
- int left = mainLayout.getAbsoluteLeft() + 50;
- int top = mainLayout.getAbsoluteTop() + 25;
- GCubeDialog dlg = new GCubeDialog(true);
- dlg.setText("Report Metadata:");
- int pageNo = presenter.getModel().getCurrentPage();
- List metadatas = presenter.getModel().getSection(pageNo).getAllMetadata();
- int nRows = metadatas.size();
- Grid metadataGrid = new Grid(nRows, 2);
- int i = 0;
- for (Metadata md : metadatas) {
- metadataGrid.setWidget(i, 0, new HTML("" + md.getAttribute() + ": "));
- metadataGrid.setWidget(i, 1, new HTML(md.getValue()));
- i++;
- }
+ GWT.runAsync(new RunAsyncCallback() {
+
+ @Override
+ public void onSuccess() {
+ int left = mainLayout.getAbsoluteLeft() + 50;
+ int top = mainLayout.getAbsoluteTop() + 25;
+ GCubeDialog dlg = new GCubeDialog(true);
+ dlg.setText("Report Metadata:");
+ int pageNo = presenter.getModel().getCurrentPage();
+ List metadatas = presenter.getModel().getSection(pageNo).getAllMetadata();
+ int nRows = metadatas.size();
+ Grid metadataGrid = new Grid(nRows, 2);
+ int i = 0;
+ for (Metadata md : metadatas) {
+ metadataGrid.setWidget(i, 0, new HTML("" + md.getAttribute() + ": "));
+ metadataGrid.setWidget(i, 1, new HTML(md.getValue()));
+ i++;
+ }
- dlg.setWidget(metadataGrid);
- dlg.setPopupPosition(left, top);
- dlg.setAnimationEnabled(true);
- dlg.show();
+ dlg.setWidget(metadataGrid);
+ dlg.setPopupPosition(left, top);
+ dlg.setAnimationEnabled(true);
+ dlg.show();
+ }
+
+ @Override
+ public void onFailure(Throwable reason) {}
+ });
+
+
}
};
@@ -734,32 +748,40 @@ public class Headerbar extends Composite{
dlg.show();
}
else {
+ GWT.runAsync(new RunAsyncCallback() {
+ @Override
+ public void onSuccess() {
+ int left = mainLayout.getAbsoluteLeft() + 50;
+ int top = mainLayout.getAbsoluteTop() + 25;
+ WorkspaceLightTreeLoadPopup wpTreepopup = new WorkspaceLightTreeLoadPopup("Pick the item you want to import from", true, true);
+ wpTreepopup.setShowableTypes(ItemType.REPORT_TEMPLATE, ItemType.REPORT);
- int left = mainLayout.getAbsoluteLeft() + 50;
- int top = mainLayout.getAbsoluteTop() + 25;
- WorkspaceLightTreeLoadPopup wpTreepopup = new WorkspaceLightTreeLoadPopup("Pick the item you want to import from", true, true);
- wpTreepopup.setShowableTypes(ItemType.REPORT_TEMPLATE, ItemType.REPORT);
-
- wpTreepopup.addPopupHandler(new PopupHandler() {
- public void onPopup(PopupEvent event) {
- if (! event.isCanceled()) {
- if (event.getSelectedItem() != null) {
- int left = mainLayout.getAbsoluteLeft() + 50;
- int top = mainLayout.getAbsoluteTop() + 25;
- ImporterDialog dlg = new ImporterDialog(event.getSelectedItem(), presenter);
- dlg.setPopupPosition(left, top);
- dlg.setAnimationEnabled(true);
- dlg.show();
- }
- presenter.getHeader().enableExports();
- }
+ wpTreepopup.addPopupHandler(new PopupHandler() {
+ public void onPopup(PopupEvent event) {
+ if (! event.isCanceled()) {
+ if (event.getSelectedItem() != null) {
+ int left = mainLayout.getAbsoluteLeft() + 50;
+ int top = mainLayout.getAbsoluteTop() + 25;
+ ImporterDialog dlg = new ImporterDialog(event.getSelectedItem(), presenter);
+ dlg.setPopupPosition(left, top);
+ dlg.setAnimationEnabled(true);
+ dlg.show();
+ }
+ presenter.getHeader().enableExports();
+ }
+ }
+ });
+ wpTreepopup.setPopupPosition(left, top);
+ wpTreepopup.show();
+ }
+
+ @Override
+ public void onFailure(Throwable reason) {
+
}
});
-
-
- wpTreepopup.setPopupPosition(left, top);
- wpTreepopup.show();
+
}
}
};
diff --git a/src/main/java/org/gcube/portlets/user/reportgenerator/client/Presenter/Presenter.java b/src/main/java/org/gcube/portlets/user/reportgenerator/client/Presenter/Presenter.java
index 1e4ab7d..d9d6617 100644
--- a/src/main/java/org/gcube/portlets/user/reportgenerator/client/Presenter/Presenter.java
+++ b/src/main/java/org/gcube/portlets/user/reportgenerator/client/Presenter/Presenter.java
@@ -52,6 +52,7 @@ import org.gcube.portlets.user.reportgenerator.shared.UserBean;
import com.extjs.gxt.ui.client.widget.MessageBox;
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
import com.google.gwt.core.client.GWT;
+import com.google.gwt.core.client.RunAsyncCallback;
import com.google.gwt.event.shared.EventBus;
import com.google.gwt.event.shared.HandlerManager;
import com.google.gwt.event.shared.SimpleEventBus;
@@ -629,40 +630,6 @@ public class Presenter {
* @param model
*/
public void generateFiMES(final TemplateModel model) {
-// GWT.log("generateFiMES");
-// MessageBox.show(new MessageBoxConfig() { {
-// setMsg("Processing report, please wait ...");
-// setProgressText("pre-processining phase");
-// setWidth(300);
-// setWait(true);
-// setWaitConfig(new WaitConfig() {
-// {
-// setInterval(500);
-// }
-// });
-// }
-// });
-// final SerializableModel toSend = model.getSerializableModel();
-//
-// model.getModelService().generateTempDocx(toSend, new AsyncCallback() {
-// public void onFailure(Throwable caught) {
-// MessageBox.hide();
-// MessageBox.alert("There were problems on Server: " + caught.getMessage());
-// }
-//
-// public void onSuccess(String result) {
-// MessageBox.hide();
-// if (result.compareTo("ERROR") == 0)
-// MessageBox.alert("There were problems on Server, conversion failed");
-// else {
-// MessageBox.hide();
-// String filename = toSend.getTemplateName().replaceAll(".d4sR", "");
-// GWT.log("____>>>>>"+filename);
-// final FimesExporterPopup pp = new FimesExporterPopup(eventBus, result, filename);
-// GWT.log("____>>>>>pp.isFinished()="+pp.isFinished());
-// }
-// }
-// });
}
/**
*
@@ -670,120 +637,33 @@ public class Presenter {
* @param type .
*/
public void generateManifestation(final TemplateModel model, final ExportManifestationType type) {
-// boolean cont = true;
-// if (type == ExportManifestationType.HTML && model.containsLargeTS()) {
-// cont = Window.confirm("Exporting Large Time Series in HTML format can take up to minutes. (about 30 secs for 500 rows)\ndo you want to continue?");
-// }
+ GWT.runAsync(ReportExporterPopup.class, new RunAsyncCallback() {
+
+ @Override
+ public void onSuccess() {
+ ReportExporterPopup popup = new ReportExporterPopup(eventBus);
+ Model reportModel = model.getSerializableModel();
+ switch (type) {
+ case DOCX:
+ popup.export(reportModel, TypeExporter.DOCX);
+ break;
+ case HTML:
+ popup.export(reportModel, TypeExporter.HTML);
+ break;
+ case PDF:
+ popup.export(reportModel, TypeExporter.PDF);
+ break;
+ case XML:
+ popup.export(reportModel, TypeExporter.XML);
+ break;
+ }
+ }
+
+ @Override
+ public void onFailure(Throwable reason) {
+ }
+ });
-
- ReportExporterPopup popup = new ReportExporterPopup(eventBus);
- Model reportModel = model.getSerializableModel();
-
- switch (type) {
- case DOCX:
- popup.export(reportModel, TypeExporter.DOCX);
- break;
- case HTML:
- popup.export(reportModel, TypeExporter.HTML);
- break;
- case PDF:
- popup.export(reportModel, TypeExporter.PDF);
- break;
- case XML:
- popup.export(reportModel, TypeExporter.XML);
- break;
- }
-
-
-// //continue after warning the user on exporting large TSs
-// if (cont) {
-// final int left = Window.getClientWidth() / 2 - 200;
-// final int top = Window.getClientHeight() / 2 + 100;
-// final LoadingPopup loading = new LoadingPopup(true);
-// loading.setPopupPosition(left, top);
-// //loading.setStyleName("none");
-//
-//
-// AsyncCallback callback = new AsyncCallback() {
-//
-// public void onFailure(Throwable caught) {
-// //MessageBox
-// MessageBox.alert("", "Failed to export: " + caught.getMessage(), null);
-//
-// }
-//
-// public void onSuccess(Boolean result) {
-// //MessageBox.hide();
-// if (result) {
-// refreshWorkspace();
-//
-//
-//
-// final GCubeDialog popupPanel = new GCubeDialog();
-// popupPanel.setText("Exporting result");
-// String exportedName = model.getTemplateName();
-// exportedName = exportedName.replaceAll(".d4sR", "");
-// exportedName = exportedName.replaceAll(".d4sT", "");
-//
-// final String urlToOpen = model.getExportedFileURL(type, exportedName);
-//
-// VerticalPanel dlgPanel = new VerticalPanel();
-// dlgPanel.setSpacing(5);
-// dlgPanel.add(new HTML("The Report " + exportedName + " (" + type +") has been successfully saved
in your workspace root folder", true));
-// CellPanel bPanel = new HorizontalPanel();
-// Button close = new Button("close");
-// Button preview = new Button("Open");
-// bPanel.add(close);
-// bPanel.add(preview);
-// bPanel.setWidth("100%");
-//
-// bPanel.setSpacing(5);
-// bPanel.setCellWidth(close, "50%");
-// bPanel.setCellWidth(preview, "50%");
-// bPanel.setCellHorizontalAlignment(close, HasHorizontalAlignment.ALIGN_CENTER);
-// bPanel.setCellHorizontalAlignment(preview, HasHorizontalAlignment.ALIGN_CENTER);
-//
-// close.addClickHandler(new ClickHandler() {
-// public void onClick(ClickEvent event) {
-// popupPanel.hide();
-// }
-// });
-// preview.addClickHandler(new ClickHandler() {
-// public void onClick(ClickEvent event) {
-// Window.open(urlToOpen, model.getTemplateName(), "");
-// }
-// });
-// dlgPanel.add(bPanel);
-//
-// popupPanel.setAnimationEnabled(true);
-// popupPanel.setPopupPosition(left, top);
-// popupPanel.setWidget(dlgPanel);
-// popupPanel.show();
-// }
-// else {
-// MessageBox.alert("", "Server reported errors on exporting Format", null);
-// }
-// }
-//
-// };
-//
-// Model toSend = model.getSerializableModel();
-// model.getModelService().generateManifestation(toSend, type, callback);
-//TODO:
-// MessageBox.show(new MessageBoxConfig() {
-// {
-// setMsg("Processing report, please wait ...");
-// setProgressText("exporting ...");
-// setWidth(300);
-// setWait(true);
-// setWaitConfig(new WaitConfig() {
-// {
-// setInterval(1000);
-// }
-// });
-// }
-// });
-// }
}
@@ -1225,19 +1105,28 @@ public class Presenter {
public void showReportStructure() {
- ReportStructureDialog panel = new ReportStructureDialog(eventBus, model.getSerializableModel(), ToolboxPanel.TOOLBOX_WIDTH+"px", ToolboxPanel.TOOLBOX_HEIGHT+"px");
- final com.extjs.gxt.ui.client.widget.Window window = new com.extjs.gxt.ui.client.widget.Window();
- window.setTitle("Report Structure");
- window.setClosable(true);
- window.setResizable(false);
- window.setWidth(ToolboxPanel.TOOLBOX_WIDTH);
- window.setHeight(ToolboxPanel.TOOLBOX_HEIGHT);
- window.setPlain(true);
- window.setLayout(new FitLayout());
- window.add(panel);
- panel.getElement().getStyle().setBackgroundColor("#FFF");
- window.setPosition(0, this.getToolBoxPanel().getAbsoluteTop());
- window.show();
+ GWT.runAsync(ReportStructureDialog.class, new RunAsyncCallback() {
+ @Override
+ public void onSuccess() {
+ ReportStructureDialog panel = new ReportStructureDialog(eventBus, model.getSerializableModel(), ToolboxPanel.TOOLBOX_WIDTH+"px", ToolboxPanel.TOOLBOX_HEIGHT+"px");
+ final com.extjs.gxt.ui.client.widget.Window window = new com.extjs.gxt.ui.client.widget.Window();
+ window.setTitle("Report Structure");
+ window.setClosable(true);
+ window.setResizable(false);
+ window.setWidth(ToolboxPanel.TOOLBOX_WIDTH);
+ window.setHeight(ToolboxPanel.TOOLBOX_HEIGHT);
+ window.setPlain(true);
+ window.setLayout(new FitLayout());
+ window.add(panel);
+ panel.getElement().getStyle().setBackgroundColor("#FFF");
+ window.setPosition(0, getToolBoxPanel().getAbsoluteTop());
+ window.show();
+ }
+ @Override
+ public void onFailure(Throwable reason) {
+ }
+ });
+
}
diff --git a/src/main/java/org/gcube/portlets/user/reportgenerator/server/servlet/DownloadEncryptedReport.java b/src/main/java/org/gcube/portlets/user/reportgenerator/server/servlet/DownloadEncryptedReport.java
index 72623f4..6c88d9c 100644
--- a/src/main/java/org/gcube/portlets/user/reportgenerator/server/servlet/DownloadEncryptedReport.java
+++ b/src/main/java/org/gcube/portlets/user/reportgenerator/server/servlet/DownloadEncryptedReport.java
@@ -24,6 +24,7 @@ import org.gcube.portlets.user.homelibrary.home.workspace.folder.items.Report;
import org.gcube.portlets.user.homelibrary.home.workspace.folder.items.ReportTemplate;
import org.gcube.portlets.user.homelibrary.util.encryption.EncryptionUtil;
+@SuppressWarnings("serial")
public class DownloadEncryptedReport extends HttpServlet {