You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by an...@apache.org on 2014/03/27 18:15:35 UTC
svn commit: r1582408 - in
/jena/trunk/jena-arq/src/main/java/org/apache/jena: riot/WebContent.java
web/DatasetGraphAccessorHTTP.java
Author: andy
Date: Thu Mar 27 17:15:34 2014
New Revision: 1582408
URL: http://svn.apache.org/r1582408
Log:
JENA-663 : Use general Accept header
1/ Accept header to prefer Turtle, then NT, JSON-LD and RDF/XML (then anything).
2/ Allow "Accept:" and outgoing "Content-type:" to be set by the application.
Modified:
jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/WebContent.java
jena/trunk/jena-arq/src/main/java/org/apache/jena/web/DatasetGraphAccessorHTTP.java
Modified: jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/WebContent.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/WebContent.java?rev=1582408&r1=1582407&r2=1582408&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/WebContent.java (original)
+++ jena/trunk/jena-arq/src/main/java/org/apache/jena/riot/WebContent.java Thu Mar 27 17:15:34 2014
@@ -157,9 +157,10 @@ public class WebContent
/** Accept header part when looking for a graph */
private static final String defaultGraphAccept
- = "text/turtle,application/n-triples;q=0.9,application/rdf+xml;q=0.8,application/xml;q=0.7,application/ld+json;q=0.5" ;
+ = "text/turtle,application/n-triples;q=0.9,application/ld+json;q=0.8,application/rdf+xml;q=0.7" ;
/** Accept header when looking for a graph */
+ // Catches aplication/xml and application.json
public static final String defaultGraphAcceptHeader = defaultGraphAccept+",*/*;q=0.5" ;
/** Accept header part when looking for a dataset */
Modified: jena/trunk/jena-arq/src/main/java/org/apache/jena/web/DatasetGraphAccessorHTTP.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/org/apache/jena/web/DatasetGraphAccessorHTTP.java?rev=1582408&r1=1582407&r2=1582408&view=diff
==============================================================================
--- jena/trunk/jena-arq/src/main/java/org/apache/jena/web/DatasetGraphAccessorHTTP.java (original)
+++ jena/trunk/jena-arq/src/main/java/org/apache/jena/web/DatasetGraphAccessorHTTP.java Thu Mar 27 17:15:34 2014
@@ -46,12 +46,32 @@ import com.hp.hpl.jena.shared.JenaExcept
public class DatasetGraphAccessorHTTP implements DatasetGraphAccessor {
// Test for this class are in Fuseki so they can be run with a server.
+ private static final HttpResponseHandler noResponse = HttpResponseLib.nullResponse ;
+ /** Format used to send a graph to the server */
+ private static final RDFFormat defaultSendLang = RDFFormat.RDFXML_PLAIN ;
+
private final String remote ;
- private static final HttpResponseHandler noResponse = HttpResponseLib.nullResponse ;
private HttpAuthenticator authenticator ;
- /** Format used to send a graph to the server */
- private static RDFFormat defaultSendLang = RDFFormat.RDFXML_PLAIN ;
+ private RDFFormat formatPutPost = defaultSendLang ;
+
+ /**
+ * Accept header for fetching graphs - prefer N-triples.
+ * @See WebContent.defaultGraphAcceptHeader
+ */
+ private String graphAcceptHeader = WebContent.defaultGraphAcceptHeader ;
+
+ /** RDF syntax to use when sending graphs with POST and PUT. */
+ public RDFFormat getOutboundSyntax() { return formatPutPost ; }
+
+ /** Set the RDF syntax to use when sending graphs with POST and PUT. Defaults to RDF/XML. */
+ public void setOutboundSyntax(RDFFormat format) { formatPutPost = format ; }
+
+ /** HTTP accept header used to GET a graph. */
+ public String getGraphAcceptHeader() { return graphAcceptHeader ; }
+
+ /** Set the HTTP accept header used to GET a graph. */
+ public void setGraphAcceptHeader(String header) { graphAcceptHeader = header ; }
/**
* Create a DatasetUpdater for the remote URL
@@ -108,18 +128,10 @@ public class DatasetGraphAccessorHTTP im
return doGet(target(graphName)) ;
}
- /**
- * Accept header for fetching graphs - prefer N-triples
- *
- * @See WebContent.defaultGraphAcceptHeader
- *
- */
- private static String GetAcceptHeader = "application/n-triples,text/turtle;q=0.9,application/rdf+xml;q=0.8,application/xml;q=0.7" ;
-
protected Graph doGet(String url) {
HttpCaptureResponse<Graph> graph = HttpResponseLib.graphHandler() ;
try {
- HttpOp.execHttpGet(url, GetAcceptHeader, graph, this.authenticator) ;
+ HttpOp.execHttpGet(url, graphAcceptHeader, graph, this.authenticator) ;
} catch (HttpException ex) {
if ( ex.getResponseCode() == HttpSC.NOT_FOUND_404 )
return null ;
@@ -222,11 +234,6 @@ public class DatasetGraphAccessorHTTP im
return remote + "?" + HttpNames.paramGraph + "=" + guri ;
}
- /**
- * RDF syntax to use when sending graphs with POST and PUT
- */
- protected RDFFormat getOutboundSyntax() { return defaultSendLang ; }
-
/** Create an HttpEntity for the graph */
protected HttpEntity graphToHttpEntity(final Graph graph) {