Changed report encrypted export
git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/trunk/portlets/user/reports@71404 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
e10bca1b36
commit
9dc1b33f44
|
@ -653,9 +653,9 @@ public class Headerbar extends Composite{
|
||||||
|
|
||||||
GWT.runAsync(WorkspaceLightTreeLoadPopup.class, new RunAsyncCallback() {
|
GWT.runAsync(WorkspaceLightTreeLoadPopup.class, new RunAsyncCallback() {
|
||||||
public void onSuccess() {
|
public void onSuccess() {
|
||||||
WorkspaceLightTreeLoadPopup wpTreepopup = new WorkspaceLightTreeLoadPopup("Open Template", true, true);
|
WorkspaceLightTreeLoadPopup wpTreepopup = new WorkspaceLightTreeLoadPopup("Select the Report (or Template) to encrypt ", true, true);
|
||||||
wpTreepopup.setShowableTypes(ItemType.REPORT_TEMPLATE);
|
wpTreepopup.setShowableTypes(ItemType.REPORT_TEMPLATE, ItemType.REPORT);
|
||||||
wpTreepopup.setSelectableTypes(ItemType.REPORT_TEMPLATE);
|
wpTreepopup.setSelectableTypes(ItemType.REPORT_TEMPLATE, ItemType.REPORT);
|
||||||
|
|
||||||
wpTreepopup.addPopupHandler(new PopupHandler() {
|
wpTreepopup.addPopupHandler(new PopupHandler() {
|
||||||
public void onPopup(PopupEvent event) {
|
public void onPopup(PopupEvent event) {
|
||||||
|
|
|
@ -5,8 +5,8 @@ import java.io.File;
|
||||||
import java.io.FileInputStream;
|
import java.io.FileInputStream;
|
||||||
import java.io.FileOutputStream;
|
import java.io.FileOutputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
import java.io.InputStream;
|
||||||
|
|
||||||
import javax.servlet.ServletContext;
|
|
||||||
import javax.servlet.ServletException;
|
import javax.servlet.ServletException;
|
||||||
import javax.servlet.ServletOutputStream;
|
import javax.servlet.ServletOutputStream;
|
||||||
import javax.servlet.http.HttpServlet;
|
import javax.servlet.http.HttpServlet;
|
||||||
|
@ -18,7 +18,9 @@ import org.gcube.application.framework.core.session.SessionManager;
|
||||||
import org.gcube.portal.custom.scopemanager.scopehelper.ScopeHelper;
|
import org.gcube.portal.custom.scopemanager.scopehelper.ScopeHelper;
|
||||||
import org.gcube.portlets.user.homelibrary.home.HomeLibrary;
|
import org.gcube.portlets.user.homelibrary.home.HomeLibrary;
|
||||||
import org.gcube.portlets.user.homelibrary.home.workspace.Workspace;
|
import org.gcube.portlets.user.homelibrary.home.workspace.Workspace;
|
||||||
import org.gcube.portlets.user.homelibrary.home.workspace.WorkspaceItem;
|
import org.gcube.portlets.user.homelibrary.home.workspace.folder.FolderItem;
|
||||||
|
import org.gcube.portlets.user.homelibrary.home.workspace.folder.FolderItemType;
|
||||||
|
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.home.workspace.folder.items.ReportTemplate;
|
||||||
import org.gcube.portlets.user.homelibrary.util.encryption.EncryptionUtil;
|
import org.gcube.portlets.user.homelibrary.util.encryption.EncryptionUtil;
|
||||||
|
|
||||||
|
@ -29,17 +31,27 @@ public class DownloadEncryptedReport extends HttpServlet {
|
||||||
protected void doGet(HttpServletRequest request,
|
protected void doGet(HttpServletRequest request,
|
||||||
HttpServletResponse response) throws ServletException, IOException {
|
HttpServletResponse response) throws ServletException, IOException {
|
||||||
|
|
||||||
ReportTemplate item = null;
|
FolderItem item = null;
|
||||||
File tmpFile = File.createTempFile("report", "texz");
|
File tmpFile = File.createTempFile("report", "texz");
|
||||||
String fileName = null;
|
String fileName = null;
|
||||||
|
InputStream data = null;
|
||||||
try {
|
try {
|
||||||
Workspace workspace = HomeLibrary.getUserWorkspace(getASLSession(request));
|
Workspace workspace = HomeLibrary.getUserWorkspace(getASLSession(request));
|
||||||
item = (ReportTemplate)workspace.getItem(request.getParameter("itemId"));
|
item = (FolderItem)workspace.getItem(request.getParameter("itemId"));
|
||||||
|
|
||||||
|
if (item.getFolderItemType() == FolderItemType.REPORT) {
|
||||||
|
Report report = (Report)item;
|
||||||
|
data = report.getData();
|
||||||
|
} else {
|
||||||
|
ReportTemplate template = (ReportTemplate)item;
|
||||||
|
data = template.getData();
|
||||||
|
}
|
||||||
|
|
||||||
fileName = item.getName() + ".texz";
|
fileName = item.getName() + ".texz";
|
||||||
|
|
||||||
EncryptionUtil util = new EncryptionUtil();
|
EncryptionUtil util = new EncryptionUtil();
|
||||||
FileOutputStream out = new FileOutputStream(tmpFile);
|
FileOutputStream out = new FileOutputStream(tmpFile);
|
||||||
util.encrypt(item.getData(), out);
|
util.encrypt(data, out);
|
||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
throw new ServletException(e);
|
throw new ServletException(e);
|
||||||
|
|
Reference in New Issue