Mercurial > hg > LGServices
view src/main/java/de/mpiwg/gazetteer/rest/DownloadTabDelimited4File.java @ 58:b8ad346e39a0
new: modify based on doc 'Improving LGServices interface.docx': user workflow improvement, functions like adding task into a topic and search suggestions.
author | Zoe Hong <zhong@mpiwg-berlin.mpg.de> |
---|---|
date | Mon, 02 May 2016 12:03:30 +0200 |
parents | |
children | a025dd907626 |
line wrap: on
line source
package de.mpiwg.gazetteer.rest; import java.io.PrintWriter; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.commons.lang.StringUtils; import org.json.JSONObject; import de.mpiwg.gazetteer.bo.LGFile; import de.mpiwg.gazetteer.utils.DataProvider; import de.mpiwg.gazetteer.utils.FileManager; import de.mpiwg.gazetteer.utils.HTTPUtils; public class DownloadTabDelimited4File extends AbstractServletMethod { public static String name = "downloadTabDelimited4File"; public static void execute(HttpServletRequest request, HttpServletResponse response) throws Exception{ Long fileId = getQueryLongParam(request, "fileId"); if(fileId != null){ LGFile file = DataProvider.getInstance().getFile(fileId); if(file != null){ String text = HTTPUtils.getTabDelimitedOfFile(fileId); // get text as tab-delimited file if(StringUtils.isNotEmpty(text)){ String filename = file.getFileName(); // "112_360452_360453_2015.09.04_12.43.08.924_11.txt"; //filename extension with csv filename = filename.substring(0, filename.length()-3); filename += "csv"; response.setContentType("text/csv; charset=UTF-8"); response.setHeader("Content-Disposition","attachment; filename=\"" + filename + "\""); PrintWriter out = response.getWriter(); out.print(text); out.flush(); } } else{ response.setContentType("application/json"); JSONObject json = new JSONObject(); json.put("status", "error"); json.put("message", "File no found (" + fileId + ")"); PrintWriter out = response.getWriter(); out.print(json.toString()); out.flush(); } }else{ response.setContentType("application/json"); JSONObject json = new JSONObject(); json.put("status", "error"); json.put("message", "Following parameters are mandatory: fileId."); PrintWriter out = response.getWriter(); out.print(json.toString()); out.flush(); } } }