package edu.isi.karma.webserver; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import edu.isi.karma.er.helper.TripleStoreUtil; public class R2RMLMappingTripleStoreServlet extends HttpServlet{ /** * */ private static final long serialVersionUID = -4964901214061089214L; private String serverAddress = "http://localhost:8080/openrdf-sesame/repositories/karma_models"; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String baseURL = request.getRequestURL().substring(0, request.getRequestURL().lastIndexOf("R2RMLMapping/local/repository/")); serverAddress = baseURL + "openrdf-sesame/repositories/karma_models"; String[] test = request.getParameterValues("modelRepository"); if (test.length > 0) serverAddress = test[0]; String path = request.getPathInfo(); String context = ""; String url = ""; if (request.getPathInfo() != null) { if (path.lastIndexOf("://") != path.indexOf("://")) { int pos = path.lastIndexOf("://"); int length = pos - path.substring(0, pos).lastIndexOf("/"); context = path.substring(1, pos - length); url = path.substring(pos - length + 1); } else { url = path.substring(1); } } TripleStoreUtil util = new TripleStoreUtil(); //response.getWriter().println(TripleStoreUtil.defaultModelsRepoUrl); try { response.getWriter().println(util.getMappingFromTripleStore(serverAddress, context, url)); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } }