Merge RAP 2.x adaptation from 2.tp branch
[lgpl/argeo-commons.git] / base / runtime / org.argeo.eclipse.ui.rap / src / main / java / org / argeo / eclipse / ui / specific / DownloadServiceHandler.java
index e12210f1bb0b503221abd1bab6b64f4cca4744cb..6c70b215e5fcb5f8dbc97c3ab09ce10b0821839c 100644 (file)
@@ -18,13 +18,13 @@ package org.argeo.eclipse.ui.specific;
 import java.io.IOException;
 
 import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
 import org.argeo.ArgeoException;
-import org.eclipse.rwt.RWT;
-import org.eclipse.rwt.service.IServiceHandler;
+import org.eclipse.rap.rwt.service.ServiceHandler;
 
-public class DownloadServiceHandler implements IServiceHandler {
+public class DownloadServiceHandler implements ServiceHandler {
 
        private FileProvider provider;
 
@@ -32,16 +32,16 @@ public class DownloadServiceHandler implements IServiceHandler {
                this.provider = provider;
        }
 
-       public void service() throws IOException, ServletException {
+       public void service(HttpServletRequest request, HttpServletResponse response)
+                       throws IOException, ServletException {
                // Which file to download?
-               String fileName = RWT.getRequest().getParameter("filename");
-               String fileId = RWT.getRequest().getParameter("fileid");
+               String fileName = request.getParameter("filename");
+               String fileId = request.getParameter("fileid");
 
                // Get the file content
                byte[] download = provider.getByteArrayFileFromId(fileId);
 
                // Send the file in the response
-               HttpServletResponse response = RWT.getResponse();
                response.setContentType("application/octet-stream");
                response.setContentLength(download.length);
                String contentDisposition = "attachment; filename=\"" + fileName + "\"";