
git-svn-id: http://google-refine.googlecode.com/svn/branches/split-refactor@905 7d457c2a-affb-35e4-300a-418c747d4874
58 lines
2.1 KiB
Java
58 lines
2.1 KiB
Java
package com.metaweb.gridworks.commands.freebase;
|
|
|
|
import java.io.IOException;
|
|
import java.io.StringWriter;
|
|
import java.util.Properties;
|
|
|
|
import javax.servlet.ServletException;
|
|
import javax.servlet.http.HttpServletRequest;
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
|
import org.json.JSONException;
|
|
import org.json.JSONObject;
|
|
|
|
import com.metaweb.gridworks.ProjectManager;
|
|
import com.metaweb.gridworks.browsing.Engine;
|
|
import com.metaweb.gridworks.commands.Command;
|
|
import com.metaweb.gridworks.exporters.ProtographTransposeExporter.TripleLoaderExporter;
|
|
import com.metaweb.gridworks.model.Project;
|
|
import com.metaweb.gridworks.util.FreebaseUtils;
|
|
|
|
public class UploadDataCommand extends Command {
|
|
|
|
@Override
|
|
public void doPost(HttpServletRequest request, HttpServletResponse response)
|
|
throws ServletException, IOException {
|
|
|
|
ProjectManager.singleton.setBusy(true);
|
|
try {
|
|
Project project = getProject(request);
|
|
Engine engine = getEngine(request, project);
|
|
TripleLoaderExporter exporter = new TripleLoaderExporter();
|
|
StringWriter triples = new StringWriter(10 * 1024 * 1024);
|
|
exporter.export(project, new Properties(), engine, triples);
|
|
|
|
String source_name = request.getParameter("source_name");
|
|
String source_id = request.getParameter("source_id");
|
|
String graph = request.getParameter("graph");
|
|
|
|
String result = FreebaseUtils.uploadTriples(request, graph, source_name, source_id, triples.toString());
|
|
|
|
response.setCharacterEncoding("UTF-8");
|
|
response.setHeader("Content-Type", "application/json");
|
|
|
|
try {
|
|
new JSONObject(result);
|
|
response.getWriter().write(result);
|
|
} catch (JSONException e) {
|
|
respond(response,"500 Error", result);
|
|
}
|
|
|
|
} catch (Exception e) {
|
|
respondException(response, e);
|
|
} finally {
|
|
ProjectManager.singleton.setBusy(false);
|
|
}
|
|
}
|
|
}
|