From 09a34cfe1b7f1cd4f7829dfb7bb84c5aa9cc4e66 Mon Sep 17 00:00:00 2001 From: cominch Date: Mon, 12 Mar 2012 11:45:27 +0100 Subject: [PATCH] prepare RDF dump routines --- htroot/interaction/GetRDF.java | 104 +++++++++++++++++++++++++++++++++ htroot/interaction/GetRDF.json | 3 + htroot/interaction/GetRDF.xml | 1 + 3 files changed, 108 insertions(+) create mode 100644 htroot/interaction/GetRDF.java create mode 100644 htroot/interaction/GetRDF.json create mode 100644 htroot/interaction/GetRDF.xml diff --git a/htroot/interaction/GetRDF.java b/htroot/interaction/GetRDF.java new file mode 100644 index 000000000..f9466d27f --- /dev/null +++ b/htroot/interaction/GetRDF.java @@ -0,0 +1,104 @@ +package interaction; + +//ViewLog_p.java +//----------------------- +//part of the AnomicHTTPD caching proxy +//(C) by Michael Peter Christen; mc@yacy.net +//first published on http://www.anomic.de +//Frankfurt, Germany, 2004 +// +//This File is contributed by Alexander Schier +//last major change: 14.12.2004 +// +//This program is free software; you can redistribute it and/or modify +//it under the terms of the GNU General Public License as published by +//the Free Software Foundation; either version 2 of the License, or +//(at your option) any later version. +// +//This program is distributed in the hope that it will be useful, +//but WITHOUT ANY WARRANTY; without even the implied warranty of +//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +//GNU General Public License for more details. +// +//You should have received a copy of the GNU General Public License +//along with this program; if not, write to the Free Software +//Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +//You must compile this file with +//javac -classpath .:../classes ViewLog_p.java +//if the shell's current path is HTROOT + +import java.io.ByteArrayOutputStream; +import java.io.FileOutputStream; + +import com.hp.hpl.jena.rdf.model.Model; + +import net.yacy.cora.protocol.HeaderFramework; +import net.yacy.cora.protocol.RequestHeader; +import net.yacy.interaction.Interaction; +import net.yacy.interaction.TripleStore; +import net.yacy.kelondro.logging.Log; +import net.yacy.search.Switchboard; +import de.anomic.data.UserDB; +import de.anomic.server.serverObjects; +import de.anomic.server.serverSwitch; + +public class GetRDF { + + public static serverObjects respond(final RequestHeader header, final serverObjects post, final serverSwitch env) { + + final Switchboard sb = (Switchboard) env; + + final serverObjects prop = new serverObjects(); + + String url = ""; + String s = ""; + String p = ""; + String o = ""; + + Boolean global = false; + + if(post != null){ + + global = post.containsKey("global"); + + } + + + if (global) { + + ByteArrayOutputStream fout; + + + fout = new ByteArrayOutputStream(); + + TripleStore.model.write(fout); + + prop.put("resultXML", fout.toString()); + + } else { + + Model tmp = TripleStore.privatestorage.get(Interaction.GetLoggedOnUser(header)); + + if (tmp != null) { + + ByteArrayOutputStream fout; + fout = new ByteArrayOutputStream(); + tmp.write(fout); + + prop.put("resultXML", fout.toString()); + + } else { + + prop.put("resultXML", ""); + } + } + + + + + + return prop; + } +} diff --git a/htroot/interaction/GetRDF.json b/htroot/interaction/GetRDF.json new file mode 100644 index 000000000..fa55e965d --- /dev/null +++ b/htroot/interaction/GetRDF.json @@ -0,0 +1,3 @@ +{ + "result": "#[result]#" +} \ No newline at end of file diff --git a/htroot/interaction/GetRDF.xml b/htroot/interaction/GetRDF.xml new file mode 100644 index 000000000..1335ba16b --- /dev/null +++ b/htroot/interaction/GetRDF.xml @@ -0,0 +1 @@ +#[resultXML]# \ No newline at end of file