nlphub/src/main/java/org/gcube/nlphub/NLPMapper.java

78 lines
2.2 KiB
Java

package org.gcube.nlphub;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.log4j.Logger;
import org.gcube.nlphub.nlp.NlpNerRunner;
import org.gcube.nlphub.mapper.JsonMapper;
import org.gcube.nlphub.mapper.DefaultMapper;
/**
* Servlet implementation class NlpMapper
*/
@WebServlet("/nlphub-mapper-servlet")
public class NLPMapper extends HttpServlet {
private static final long serialVersionUID = 1L;
private Logger logger = Logger.getLogger(NLPMapper.class.getSimpleName());
/**
* @see HttpServlet#HttpServlet()
*/
public NLPMapper() {
super();
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doWork(request, response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doWork(request, response);
}
private void doWork(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// response.getWriter().append("Served at:
// ").append(request.getContextPath());
String documentLink = request.getParameter("dlink"); // link al testo (sul workspace)
String toBeMap = request.getParameter("tobemap");
String[] tokens = toBeMap.split("|");
String annotations = request.getParameter("annotations");
String language = request.getParameter("language");
for (String token : tokens) {
String[] t = token.split(":::");
try {
String json = ((JsonMapper)(getMapper(t[0]).newInstance())).getJson(t[0], t[1]);
} catch (Exception e) {
logger.error(e.getLocalizedMessage());
}
}
//response.getWriter().write(json);
}
private Class getMapper(String algId) throws Exception {
return Class.forName("org.gcube.nlphub.mapper.DefaultMapper");
}
}