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 2013/01/08 20:07:29 UTC

svn commit: r1430447 [8/10] - in /jena/branches/streaming-update: ./ apache-jena/ apache-jena/bat/ apache-jena/bin/ jena-arq/ jena-arq/src/main/java/com/hp/hpl/jena/sparql/graph/ jena-core/ jena-core/src/main/java/com/hp/hpl/jena/assembler/ jena-core/s...

Modified: jena/branches/streaming-update/jena-core/src/test/java/com/hp/hpl/jena/reasoner/test/WGReasonerTester.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-core/src/test/java/com/hp/hpl/jena/reasoner/test/WGReasonerTester.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-core/src/test/java/com/hp/hpl/jena/reasoner/test/WGReasonerTester.java (original)
+++ jena/branches/streaming-update/jena-core/src/test/java/com/hp/hpl/jena/reasoner/test/WGReasonerTester.java Tue Jan  8 19:07:23 2013
@@ -18,24 +18,31 @@
 
 package com.hp.hpl.jena.reasoner.test;
 
-import com.hp.hpl.jena.rdf.model.*;
-import com.hp.hpl.jena.graph.*;
-import com.hp.hpl.jena.graph.query.*;
-import com.hp.hpl.jena.rdf.model.impl.PropertyImpl;
-import com.hp.hpl.jena.rdf.model.impl.ResourceImpl;
-import com.hp.hpl.jena.reasoner.*;
-import com.hp.hpl.jena.vocabulary.RDF;
-import com.hp.hpl.jena.rdf.arp.ARPTests;
-
-import com.hp.hpl.jena.shared.*;
-
-import junit.framework.*;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.*;
-import java.util.*;
-import java.net.*;
+import java.io.BufferedInputStream ;
+import java.io.FileInputStream ;
+import java.io.IOException ;
+import java.io.InputStream ;
+import java.net.URL ;
+import java.util.ArrayList ;
+import java.util.Iterator ;
+import java.util.List ;
+
+import junit.framework.Assert ;
+import junit.framework.TestCase ;
+import org.slf4j.Logger ;
+import org.slf4j.LoggerFactory ;
+
+import com.hp.hpl.jena.graph.Factory ;
+import com.hp.hpl.jena.graph.Graph ;
+import com.hp.hpl.jena.rdf.arp.ARPTests ;
+import com.hp.hpl.jena.rdf.model.* ;
+import com.hp.hpl.jena.rdf.model.impl.PropertyImpl ;
+import com.hp.hpl.jena.rdf.model.impl.ResourceImpl ;
+import com.hp.hpl.jena.reasoner.InfGraph ;
+import com.hp.hpl.jena.reasoner.Reasoner ;
+import com.hp.hpl.jena.reasoner.ReasonerFactory ;
+import com.hp.hpl.jena.shared.JenaException ;
+import com.hp.hpl.jena.vocabulary.RDF ;
 
 /**
  * A utility to support execution of the RDFCode working group entailment
@@ -157,7 +164,7 @@ public class WGReasonerTester {
         } else if (file.endsWith("n3")) {
             langType = "N3";
         }
-        Model result = ModelFactory.createNonreifyingModel();
+        Model result = ModelFactory.createDefaultModel();
         String fname = file;
         if (fname.startsWith(BASE_URI)) {
             fname = fname.substring(BASE_URI.length());
@@ -292,7 +299,7 @@ public class WGReasonerTester {
         }
                 
         // Load up the premise documents
-        Model premises = ModelFactory.createNonreifyingModel();
+        Model premises = ModelFactory.createDefaultModel();
         for (StmtIterator premisesI = test.listProperties(premiseDocumentP); premisesI.hasNext(); ) {
             premises.add(loadFile(premisesI.nextStatement().getObject().toString()));
         }
@@ -364,62 +371,27 @@ public class WGReasonerTester {
         
         // Signal the results        
         if (testcase != null) {
+//            if ( !correct )
+//            {
+//                boolean b = testConclusions(conclusions.getGraph(), result.getGraph());
+//                System.out.println("**** actual") ;
+//                result.write(System.out, "TTL") ; 
+//                System.out.println("**** expected") ;
+//                conclusions.write(System.out, "TTL") ;
+//            }
             Assert.assertTrue("Test: " + test + "\n" +  description, correct);
         }
         return correct?goodResult:FAIL;
     }
     
     /**
-     * Test a conclusions graph against a result graph. This works by
+     * Test a conclusions graph against a result graph.
+    * This works by
      * translating the conclusions graph into a find query which contains one
      * variable for each distinct bNode in the conclusions graph.
      */
-    private boolean testConclusions(Graph conclusions, Graph result) {
-        QueryHandler qh = result.queryHandler();
-        GraphQuery query = graphToQuery(conclusions);
-        Iterator<Domain> i = qh.prepareBindings(query, new Node[] {}).executeBindings();
-        return i.hasNext();
+    public static boolean testConclusions(Graph conclusions, Graph result) {
+        return Matcher.subgraphInferred(conclusions, result) ;
     }
 
- 
-    /**
-     * Translate a conclusions graph into a query pattern
-     */
-    public static GraphQuery graphToQuery(Graph graph) {
-        HashMap<Node, Node> bnodeToVar = new HashMap<Node, Node>();
-        GraphQuery query = new GraphQuery();
-        for (Iterator<Triple> i = graph.find(null, null, null); i.hasNext(); ) {
-            Triple triple = i.next();
-            query.addMatch(
-                translate(triple.getSubject(), bnodeToVar),
-                translate(triple.getPredicate(), bnodeToVar),
-                translate(triple.getObject(), bnodeToVar) );
-        }
-        return query;
-    }
-   
-    /**
-     * Translate a blank node to a variable node
-     * @param node the bNode to translate
-     * @param bnodeToVar a map of translations already known about
-     * @return a variable node
-     */
-    private static Node translate(Node node, HashMap<Node, Node> bnodeToVar) {
-        String varnames = "abcdefghijklmnopqrstuvwxyz";
-        if (node.isBlank()) {
-            Node t = bnodeToVar.get(node);
-            if (t == null) {
-               int i = bnodeToVar.size();
-               if (i > varnames.length()) {
-                   throw new ReasonerException("Too many bnodes in query");
-               }
-               t = Node.createVariable(varnames.substring(i, i+1));
-               bnodeToVar.put(node, t);
-            } 
-            return t;
-        } else {
-            return node;
-        }
-    }
- 
 }

Modified: jena/branches/streaming-update/jena-core/src/test/java/com/hp/hpl/jena/shared/TestSharedPackage.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-core/src/test/java/com/hp/hpl/jena/shared/TestSharedPackage.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-core/src/test/java/com/hp/hpl/jena/shared/TestSharedPackage.java (original)
+++ jena/branches/streaming-update/jena-core/src/test/java/com/hp/hpl/jena/shared/TestSharedPackage.java Tue Jan  8 19:07:23 2013
@@ -33,7 +33,6 @@ public class TestSharedPackage extends T
         TestSuite result = new TestSuite();
         result.addTest( TestPrefixMapping.suite() );
         result.addTest( TestJenaException.suite() );
-        result.addTest( TestReificationStyle.suite() );
         result.addTest( RandomizedTestSuiteRegression.suite() );
         return result;
         }

Modified: jena/branches/streaming-update/jena-fuseki/LICENSE
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/LICENSE?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/LICENSE (original)
+++ jena/branches/streaming-update/jena-fuseki/LICENSE Tue Jan  8 19:07:23 2013
@@ -200,3 +200,25 @@
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.
+
+- - - - - - - - - - - - - - - - - - - - - - - 
+
+==============================================================
+ Jetty Web Container
+ Copyright 1995-2012 Mort Bay Consulting Pty Ltd.
+==============================================================
+
+The Jetty Web Container is Copyright Mort Bay Consulting Pty Ltd
+unless otherwise noted.
+
+Jetty is dual licensed under both
+
+  * The Apache 2.0 License
+    http://www.apache.org/licenses/LICENSE-2.0.html
+
+      and
+
+  * The Eclipse Public 1.0 License
+    http://www.eclipse.org/legal/epl-v10.html
+
+Jetty may be distributed under either license.

Modified: jena/branches/streaming-update/jena-fuseki/NOTICE
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/NOTICE?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/NOTICE (original)
+++ jena/branches/streaming-update/jena-fuseki/NOTICE Tue Jan  8 19:07:23 2013
@@ -1,5 +1,5 @@
 Apache Jena - module Fuseki
-Copyright 2011, 2012 The Apache Software Foundation
+Copyright 2011-2013 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
@@ -10,3 +10,7 @@ Portions of this software were originall
   - Copyright 2010, 2011 Talis Systems Ltd.
 These have been licensed to the Apache Software Foundation under a software grant.
 
+- - - - - - - - - - - - - - - - - - - - - - - 
+
+Portions of this software include software from  Mort Bay Consulting Pty. Ltd.
+ - Copyright (c) 2004-2009 Mort Bay Consulting Pty. Ltd.

Modified: jena/branches/streaming-update/jena-fuseki/ReleaseNotes.txt
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/ReleaseNotes.txt?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/ReleaseNotes.txt (original)
+++ jena/branches/streaming-update/jena-fuseki/ReleaseNotes.txt Tue Jan  8 19:07:23 2013
@@ -1,5 +1,10 @@
 ==== Fuseki
 
+== Fuseki 0.2.6
+
++ Upgrade to Jetty 8.1.8.v20121106
++ Uses Jena 2.10.0.
+
 == Fuseki 0.2.5
 
 + JENA-334 - Fix for Fuseki start script fails when invoked with full pathname

Modified: jena/branches/streaming-update/jena-fuseki/dist/NOTICE-dist
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/dist/NOTICE-dist?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/dist/NOTICE-dist (original)
+++ jena/branches/streaming-update/jena-fuseki/dist/NOTICE-dist Tue Jan  8 19:07:23 2013
@@ -1,5 +1,5 @@
 Apache Jena - module Fuseki
-Copyright 2011, 2012 The Apache Software Foundation
+Copyright 2011-2013 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
@@ -45,7 +45,7 @@ Copyright (c) 2005 Brian Goetz and Tim P
 - - - - - - - - - - - - - - - - - - - - - - -
 
   Apache Xerces Java
-   Copyright 1999-2011, 2012 The Apache Software Foundation
+   Copyright 1999-2013 The Apache Software Foundation
 
    This product includes software developed at
    The Apache Software Foundation (http://www.apache.org/).

Modified: jena/branches/streaming-update/jena-fuseki/log4j.properties
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/log4j.properties?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/log4j.properties (original)
+++ jena/branches/streaming-update/jena-fuseki/log4j.properties Tue Jan  8 19:07:23 2013
@@ -23,8 +23,8 @@ log4j.logger.com.hp.hpl.jena.arq.exec=IN
 # Everything else in Jena
 log4j.logger.com.hp.hpl.jena=WARN
 log4j.logger.org.apache.jena=WARN
-log4j.logger.org.openjena=WARN
-log4j.logger.org.openjena.riot=INFO
+log4j.logger.org.apache.jena=WARN
+log4j.logger.org.apache.jena.riot=INFO
 
 # TDB
 # TDB syslog.

Modified: jena/branches/streaming-update/jena-fuseki/make_cp_mvn
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/make_cp_mvn?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/make_cp_mvn (original)
+++ jena/branches/streaming-update/jena-fuseki/make_cp_mvn Tue Jan  8 19:07:23 2013
@@ -24,6 +24,7 @@ open(X, "mvn -f $POM dependency:build-cl
 while(<X>)
 {
     next if /\[INFO\]/ ;
+    next if /^Download/ ;
     chop ;
     print "$_" ;
 }

Modified: jena/branches/streaming-update/jena-fuseki/pom.xml
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/pom.xml?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/pom.xml (original)
+++ jena/branches/streaming-update/jena-fuseki/pom.xml Tue Jan  8 19:07:23 2013
@@ -76,12 +76,12 @@
     <assembly.soh.name>${this.root}</assembly.soh.name>
     <assembly.zip.name>${this.root}</assembly.zip.name>
 
-    <!-- 8.1.5.v20120716 -->
-    <ver.jetty>7.6.5.v20120716</ver.jetty>
+    <ver.jetty>8.1.8.v20121106</ver.jetty>
+    <!-- <ver.jetty>7.6.5.v20120716</ver.jetty> -->
     <ver.velocity>1.7</ver.velocity>
 
-    <ver.httpclient>4.1.3</ver.httpclient>
-    <ver.httpcore>4.1.3</ver.httpcore>
+    <ver.httpclient>4.2.2</ver.httpclient>
+    <ver.httpcore>4.2.3</ver.httpcore>
     <ver.commons-fileupload>1.2.2</ver.commons-fileupload>
     <ver.commons-codec>1.5</ver.commons-codec>
     
@@ -94,19 +94,19 @@
     <dependency>
       <groupId>org.apache.jena</groupId>
       <artifactId>jena-arq</artifactId>
-      <version>2.9.5-SNAPSHOT</version>
+      <version>2.10.0-SNAPSHOT</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.jena</groupId>
       <artifactId>jena-core</artifactId>
-      <version>2.7.5-SNAPSHOT</version>
+      <version>2.10.0-SNAPSHOT</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.jena</groupId>
       <artifactId>jena-tdb</artifactId>
-      <version>0.9.5-SNAPSHOT</version>
+      <version>0.10.0-SNAPSHOT</version>
     </dependency>
 
     <!--

Modified: jena/branches/streaming-update/jena-fuseki/run_cp
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/run_cp?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/run_cp (original)
+++ jena/branches/streaming-update/jena-fuseki/run_cp Tue Jan  8 19:07:23 2013
@@ -1,6 +1,6 @@
 #!/bin/bash
 M2_REPO="${M2_REPO:-$HOME/.m2/repository}"
 
-CP="/home/afs/.m2/repo/org/apache/jena/jena-arq/2.9.5-SNAPSHOT/jena-arq-2.9.5-SNAPSHOT.jar:/home/afs/.m2/repo/commons-codec/commons-codec/1.5/commons-codec-1.5.jar:/home/afs/.m2/repo/org/apache/httpcomponents/httpcore/4.1.3/httpcore-4.1.3.jar:/home/afs/.m2/repo/org/apache/jena/jena-core/2.7.5-SNAPSHOT/jena-core-2.7.5-SNAPSHOT.jar:/home/afs/.m2/repo/org/apache/jena/jena-iri/0.9.5-SNAPSHOT/jena-iri-0.9.5-SNAPSHOT.jar:/home/afs/.m2/repo/xerces/xercesImpl/2.10.0/xercesImpl-2.10.0.jar:/home/afs/.m2/repo/xml-apis/xml-apis/1.4.01/xml-apis-1.4.01.jar:/home/afs/.m2/repo/org/apache/jena/jena-tdb/0.9.5-SNAPSHOT/jena-tdb-0.9.5-SNAPSHOT.jar:/home/afs/.m2/repo/junit/junit/4.9/junit-4.9.jar:/home/afs/.m2/repo/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar:/home/afs/.m2/repo/org/apache/httpcomponents/httpclient/4.1.2/httpclient-4.1.2.jar:/home/afs/.m2/repo/commons-fileupload/commons-fileupload/1.2.2/commons-fileupload-1.2.2.jar:/home/afs/.m2/repo/org/eclipse/jetty/jetty-server/7.6.5.v
 20120716/jetty-server-7.6.5.v20120716.jar:/home/afs/.m2/repo/org/eclipse/jetty/orbit/javax.servlet/2.5.0.v201103041518/javax.servlet-2.5.0.v201103041518.jar:/home/afs/.m2/repo/org/eclipse/jetty/jetty-continuation/7.6.5.v20120716/jetty-continuation-7.6.5.v20120716.jar:/home/afs/.m2/repo/org/eclipse/jetty/jetty-http/7.6.5.v20120716/jetty-http-7.6.5.v20120716.jar:/home/afs/.m2/repo/org/eclipse/jetty/jetty-io/7.6.5.v20120716/jetty-io-7.6.5.v20120716.jar:/home/afs/.m2/repo/org/eclipse/jetty/jetty-servlet/7.6.5.v20120716/jetty-servlet-7.6.5.v20120716.jar:/home/afs/.m2/repo/org/eclipse/jetty/jetty-security/7.6.5.v20120716/jetty-security-7.6.5.v20120716.jar:/home/afs/.m2/repo/org/eclipse/jetty/jetty-servlets/7.6.5.v20120716/jetty-servlets-7.6.5.v20120716.jar:/home/afs/.m2/repo/org/eclipse/jetty/jetty-client/7.6.5.v20120716/jetty-client-7.6.5.v20120716.jar:/home/afs/.m2/repo/org/eclipse/jetty/jetty-util/7.6.5.v20120716/jetty-util-7.6.5.v20120716.jar:/home/afs/.m2/repo/org/eclipse/jet
 ty/jetty-xml/7.6.5.v20120716/jetty-xml-7.6.5.v20120716.jar:/home/afs/.m2/repo/org/apache/velocity/velocity/1.7/velocity-1.7.jar:/home/afs/.m2/repo/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1.jar:/home/afs/.m2/repo/commons-lang/commons-lang/2.4/commons-lang-2.4.jar:/home/afs/.m2/repo/org/slf4j/slf4j-api/1.6.4/slf4j-api-1.6.4.jar:/home/afs/.m2/repo/org/slf4j/slf4j-log4j12/1.6.4/slf4j-log4j12-1.6.4.jar:/home/afs/.m2/repo/org/slf4j/jcl-over-slf4j/1.6.4/jcl-over-slf4j-1.6.4.jar:/home/afs/.m2/repo/log4j/log4j/1.2.16/log4j-1.2.16.jar"
+CP="/home/afs/.m2/repo/org/apache/jena/jena-arq/2.10.0-SNAPSHOT/jena-arq-2.10.0-SNAPSHOT.jar:/home/afs/.m2/repo/commons-codec/commons-codec/1.5/commons-codec-1.5.jar:/home/afs/.m2/repo/org/apache/httpcomponents/httpcore/4.2.3/httpcore-4.2.3.jar:/home/afs/.m2/repo/org/apache/jena/jena-core/2.10.0-SNAPSHOT/jena-core-2.10.0-SNAPSHOT.jar:/home/afs/.m2/repo/org/apache/jena/jena-iri/0.9.5-SNAPSHOT/jena-iri-0.9.5-SNAPSHOT.jar:/home/afs/.m2/repo/xerces/xercesImpl/2.10.0/xercesImpl-2.10.0.jar:/home/afs/.m2/repo/xml-apis/xml-apis/1.4.01/xml-apis-1.4.01.jar:/home/afs/.m2/repo/org/apache/jena/jena-tdb/0.10.0-SNAPSHOT/jena-tdb-0.10.0-SNAPSHOT.jar:/home/afs/.m2/repo/junit/junit/4.9/junit-4.9.jar:/home/afs/.m2/repo/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar:/home/afs/.m2/repo/org/apache/httpcomponents/httpclient/4.2.2/httpclient-4.2.2.jar:/home/afs/.m2/repo/commons-fileupload/commons-fileupload/1.2.2/commons-fileupload-1.2.2.jar:/home/afs/.m2/repo/org/eclipse/jetty/jetty-server/8
 .1.8.v20121106/jetty-server-8.1.8.v20121106.jar:/home/afs/.m2/repo/org/eclipse/jetty/orbit/javax.servlet/3.0.0.v201112011016/javax.servlet-3.0.0.v201112011016.jar:/home/afs/.m2/repo/org/eclipse/jetty/jetty-continuation/8.1.8.v20121106/jetty-continuation-8.1.8.v20121106.jar:/home/afs/.m2/repo/org/eclipse/jetty/jetty-http/8.1.8.v20121106/jetty-http-8.1.8.v20121106.jar:/home/afs/.m2/repo/org/eclipse/jetty/jetty-io/8.1.8.v20121106/jetty-io-8.1.8.v20121106.jar:/home/afs/.m2/repo/org/eclipse/jetty/jetty-servlet/8.1.8.v20121106/jetty-servlet-8.1.8.v20121106.jar:/home/afs/.m2/repo/org/eclipse/jetty/jetty-security/8.1.8.v20121106/jetty-security-8.1.8.v20121106.jar:/home/afs/.m2/repo/org/eclipse/jetty/jetty-servlets/8.1.8.v20121106/jetty-servlets-8.1.8.v20121106.jar:/home/afs/.m2/repo/org/eclipse/jetty/jetty-client/8.1.8.v20121106/jetty-client-8.1.8.v20121106.jar:/home/afs/.m2/repo/org/eclipse/jetty/jetty-util/8.1.8.v20121106/jetty-util-8.1.8.v20121106.jar:/home/afs/.m2/repo/org/eclip
 se/jetty/jetty-xml/8.1.8.v20121106/jetty-xml-8.1.8.v20121106.jar:/home/afs/.m2/repo/org/apache/velocity/velocity/1.7/velocity-1.7.jar:/home/afs/.m2/repo/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1.jar:/home/afs/.m2/repo/commons-lang/commons-lang/2.4/commons-lang-2.4.jar:/home/afs/.m2/repo/org/slf4j/slf4j-api/1.6.4/slf4j-api-1.6.4.jar:/home/afs/.m2/repo/org/slf4j/slf4j-log4j12/1.6.4/slf4j-log4j12-1.6.4.jar:/home/afs/.m2/repo/org/slf4j/jcl-over-slf4j/1.6.4/jcl-over-slf4j-1.6.4.jar:/home/afs/.m2/repo/log4j/log4j/1.2.16/log4j-1.2.16.jar"
 
 echo "$CP"

Modified: jena/branches/streaming-update/jena-fuseki/soh
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/soh?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/soh (original)
+++ jena/branches/streaming-update/jena-fuseki/soh Tue Jan  8 19:07:23 2013
@@ -111,6 +111,8 @@ $accept_charset=nil
 
 $cmd = File.basename($0)
 if ! $cmd.start_with?('s-')
+# If you don't have start_with? ...
+# if ! $cmd.match(/^s-/)
   # "soh query ..."
   $cmd = ARGV.shift
   $cmd = 's-'+$cmd

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/DEF.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/DEF.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/DEF.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/DEF.java Tue Jan  8 19:07:23 2013
@@ -20,7 +20,7 @@ package org.apache.jena.fuseki;
 
 import org.apache.jena.atlas.web.AcceptList ;
 import org.apache.jena.atlas.web.MediaType ;
-import org.openjena.riot.WebContent ;
+import org.apache.jena.riot.WebContent ;
 
 public class DEF
 {

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/Fuseki.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/Fuseki.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/Fuseki.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/Fuseki.java Tue Jan  8 19:07:23 2013
@@ -19,7 +19,9 @@
 package org.apache.jena.fuseki;
 
 import org.apache.jena.fuseki.server.SPARQLServer ;
-import org.openjena.riot.RIOT ;
+import org.apache.jena.riot.RIOT ;
+import org.apache.jena.riot.stream.LocatorURL ;
+import org.apache.jena.riot.stream.StreamManager ;
 import org.slf4j.Logger ;
 import org.slf4j.LoggerFactory ;
 
@@ -31,7 +33,6 @@ import com.hp.hpl.jena.sparql.mgt.System
 import com.hp.hpl.jena.sparql.util.Context ;
 import com.hp.hpl.jena.sparql.util.MappingRegistry ;
 import com.hp.hpl.jena.tdb.TDB ;
-import com.hp.hpl.jena.util.FileManager ;
 
 public class Fuseki
 {
@@ -43,10 +44,10 @@ public class Fuseki
     
     static public String PagesStatic = "pages" ;
     
-    // TEMPORARY
-    static public boolean graphStoreProtocolMode = false ;
+    // TEMPORARY - this enables POST of triples to the dataset URI causing a graph to be created.
+    // POSTing to /dataset?graph=uri is preferred 
+    static public boolean graphStoreProtocolPostCreate = false ;
     
-    //static private String metadataDevLocation = "org/openjena/fuseki/fuseki-properties-dev.xml" ;
     static private String metadataLocation = "org/apache/jena/fuseki/fuseki-properties.xml" ;
     static private Metadata metadata = initMetadata() ;
     private static Metadata initMetadata()
@@ -57,26 +58,26 @@ public class Fuseki
         return m ;
     }
     
-    static public final String NAME = "Fuseki" ;
-    static public final String VERSION = metadata.get(PATH+".version", "development") ;
-    static public final String BUILD_DATE = metadata.get(PATH+".build.datetime", "unknown") ; // call Date if unavailable.
-    static public final String serverHttpName     = NAME+" ("+VERSION+")" ;    
+    static public final String NAME             = "Fuseki" ;
+    static public final String VERSION          = metadata.get(PATH+".version", "development") ;
+    static public final String BUILD_DATE       = metadata.get(PATH+".build.datetime", "unknown") ; // call Date if unavailable.
+    static public final String serverHttpName   = NAME+" ("+VERSION+")" ;    
     
     // Log for operations
-    public static final String requestLogName = PATH+".Fuseki" ;
-    public static final Logger requestLog = LoggerFactory.getLogger(requestLogName) ;
+    public static final String requestLogName   = PATH+".Fuseki" ;
+    public static final Logger requestLog       = LoggerFactory.getLogger(requestLogName) ;
     // Log for general server messages.
-    public static final String serverLogName = PATH+".Server" ;
-    public static final Logger serverLog = LoggerFactory.getLogger(serverLogName) ;
+    public static final String serverLogName    = PATH+".Server" ;
+    public static final Logger serverLog        = LoggerFactory.getLogger(serverLogName) ;
     // Log for config server messages.
-    public static final String configLogName = PATH+".Config" ;
-    public static final Logger configLog = LoggerFactory.getLogger(configLogName) ;
+    public static final String configLogName    = PATH+".Config" ;
+    public static final Logger configLog        = LoggerFactory.getLogger(configLogName) ;
     
-    public static final FileManager webFileManager ;
+    public static final StreamManager webStreamManager ;
     static {
-        webFileManager = new FileManager() ;
+        webStreamManager = new StreamManager() ;
         // Only know how to handle http URLs 
-        webFileManager.addLocatorURL() ;
+        webStreamManager.addLocator(new LocatorURL()) ;
     }
     
     private static boolean initialized = false ;

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/FusekiCmd.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/FusekiCmd.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/FusekiCmd.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/FusekiCmd.java Tue Jan  8 19:07:23 2013
@@ -27,31 +27,27 @@ import java.util.List ;
 
 import org.apache.jena.atlas.io.IO ;
 import org.apache.jena.atlas.lib.FileOps ;
-import org.apache.jena.atlas.lib.Sink ;
 import org.apache.jena.atlas.lib.StrUtils ;
 import org.apache.jena.atlas.logging.Log ;
 import org.apache.jena.fuseki.mgt.ManagementServer ;
 import org.apache.jena.fuseki.server.FusekiConfig ;
 import org.apache.jena.fuseki.server.SPARQLServer ;
 import org.apache.jena.fuseki.server.ServerConfig ;
+import org.apache.jena.riot.Lang ;
+import org.apache.jena.riot.RDFLanguages ;
+import org.apache.jena.riot.RDFDataMgr ;
+import org.apache.jena.riot.SysRIOT ;
 import org.eclipse.jetty.server.Server ;
-import org.openjena.riot.Lang ;
-import org.openjena.riot.RiotLoader ;
-import org.openjena.riot.SysRIOT ;
-import org.openjena.riot.lang.SinkQuadsToDataset ;
-import org.openjena.riot.lang.SinkTriplesToGraph ;
 import org.slf4j.Logger ;
 import arq.cmd.CmdException ;
 import arq.cmdline.ArgDecl ;
 import arq.cmdline.CmdARQ ;
 import arq.cmdline.ModDatasetAssembler ;
 
-import com.hp.hpl.jena.graph.Triple ;
 import com.hp.hpl.jena.query.ARQ ;
 import com.hp.hpl.jena.query.Dataset ;
 import com.hp.hpl.jena.sparql.core.DatasetGraph ;
 import com.hp.hpl.jena.sparql.core.DatasetGraphFactory ;
-import com.hp.hpl.jena.sparql.core.Quad ;
 import com.hp.hpl.jena.tdb.TDB ;
 import com.hp.hpl.jena.tdb.TDBFactory ;
 import com.hp.hpl.jena.tdb.transaction.TransactionManager ;
@@ -124,7 +120,7 @@ public class FusekiCmd extends CmdARQ
     private static ArgDecl argFusekiConfig  = new ArgDecl(ArgDecl.HasValue, "config", "conf") ;
     private static ArgDecl argJettyConfig   = new ArgDecl(ArgDecl.HasValue, "jetty-config") ;
     private static ArgDecl argGZip          = new ArgDecl(ArgDecl.HasValue, "gzip") ;
-    private static ArgDecl argUber          = new ArgDecl(ArgDecl.NoValue,  "uber") ;   // Use the uberservlet (experimental)
+    private static ArgDecl argUber          = new ArgDecl(ArgDecl.NoValue,  "uber", "über") ;   // Use the überservlet (experimental)
     
     private static ArgDecl argGSP           = new ArgDecl(ArgDecl.NoValue,  "gsp") ;    // GSP compliance mode
     
@@ -145,19 +141,19 @@ public class FusekiCmd extends CmdARQ
         new FusekiCmd(argv).mainRun() ;
     }
     
-    private int port            = 3030 ;
-    private int mgtPort         = -1 ;
-    private String clientHost   = null;
-
-    private DatasetGraph dsg ;
-    private String datasetPath ;
-    private boolean allowUpdate = false ;
-    
-    private String fusekiConfigFile = null ;
-    private boolean enableCompression = true ;
-    private String jettyConfigFile = null ;
-    private String homeDir = null ;
-    private String pagesDir ;
+    private int port                    = 3030 ;
+    private int mgtPort                 = -1 ;
+    private String clientHost           = null;
+
+    private DatasetGraph dsg            = null ; 
+    private String datasetPath          = null ;
+    private boolean allowUpdate         = false ;
+    
+    private String fusekiConfigFile     = null ;
+    private boolean enableCompression   = true ;
+    private String jettyConfigFile      = null ;
+    private String homeDir              = null ;
+    private String pagesDir             = null ;
     
     public FusekiCmd(String...argv)
     {
@@ -186,7 +182,7 @@ public class FusekiCmd extends CmdARQ
         add(argGZip, "--gzip=on|off",           "Enable GZip compression (HTTP Accept-Encoding) if request header set") ;
         
         add(argUber) ;
-        add(argGSP) ;
+        //add(argGSP) ;
         
         super.modVersion.addClass(TDB.class) ;
         super.modVersion.addClass(Fuseki.class) ;
@@ -230,6 +226,9 @@ public class FusekiCmd extends CmdARQ
 
         
         TDB.setOptimizerWarningFlag(false) ;
+        // Don't get TDB batch commits.
+        // This is slower but less memory hungry. 
+        TransactionManager.QueueBatchSize = 0 ;
         
         if ( contains(argMem) )
         {
@@ -245,21 +244,15 @@ public class FusekiCmd extends CmdARQ
             if ( ! FileOps.exists(filename) )
                 throw new CmdException("File not found: "+filename) ;
 
-            Lang language = Lang.guess(filename) ;
+            Lang language = RDFLanguages.filenameToLang(filename) ;
             if ( language == null )
                 throw new CmdException("Can't guess language for file: "+filename) ;
             InputStream input = IO.openFile(filename) ; 
             
-            if ( language.isQuads() )
-            {
-                Sink<Quad> sink = new SinkQuadsToDataset(dsg) ;
-                RiotLoader.readQuads(input, language, filename, sink) ;
-            }
+            if ( RDFLanguages.isQuads(language) )
+                RDFDataMgr.read(dsg, filename) ;
             else
-            {
-                Sink<Triple> sink = new SinkTriplesToGraph(dsg.getDefaultGraph()) ;
-                RiotLoader.readTriples(input, language, filename, sink) ;
-            }
+                RDFDataMgr.read(dsg.getDefaultGraph(), filename) ;
         }
         
         if ( contains(argMemTDB) )
@@ -379,7 +372,7 @@ public class FusekiCmd extends CmdARQ
         if ( contains(argGSP) )
         {
             SPARQLServer.überServlet = true ;
-            Fuseki.graphStoreProtocolMode = true ;
+            Fuseki.graphStoreProtocolPostCreate = true ;
         }
 
     }

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/FusekiLib.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/FusekiLib.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/FusekiLib.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/FusekiLib.java Tue Jan  8 19:07:23 2013
@@ -26,9 +26,10 @@ import javax.servlet.http.HttpServletReq
 import org.apache.commons.lang.StringUtils ;
 import org.apache.jena.atlas.lib.MultiMap ;
 import org.apache.jena.atlas.web.MediaType ;
-import org.openjena.riot.Lang ;
-import org.openjena.riot.RiotException ;
-import org.openjena.riot.WebContent ;
+import org.apache.jena.riot.Lang ;
+import org.apache.jena.riot.RDFLanguages ;
+import org.apache.jena.riot.RiotException ;
+import org.apache.jena.riot.WebContent ;
 
 import com.hp.hpl.jena.rdf.model.Model ;
 import com.hp.hpl.jena.rdf.model.ModelFactory ;
@@ -45,31 +46,9 @@ public class FusekiLib
     { 
         if ( mimeType == null )
             return null ;
-        return mapContentTypeToLang.get(mimeType.toLowerCase()) ;
+        return WebContent.contentTypeToLang(mimeType.toLowerCase()) ;
     }
     
-    private static Model dummy = ModelFactory.createDefaultModel() ;
-    private static Map<String, Lang> mapContentTypeToLang = new HashMap<String, Lang>() ;
-    // Use riot.WebContent on next ARQ update.
-    static {
-        mapContentTypeToLang.put(WebContent.contentTypeRDFXML, Lang.RDFXML) ;
-        mapContentTypeToLang.put(WebContent.contentTypeRDFJSON, Lang.RDFJSON) ;
-        mapContentTypeToLang.put(WebContent.contentTypeTurtle, Lang.TURTLE) ;
-        mapContentTypeToLang.put(WebContent.contentTypeTurtleAlt1, Lang.TURTLE) ;
-        mapContentTypeToLang.put(WebContent.contentTypeTurtleAlt2, Lang.TURTLE) ;
-        mapContentTypeToLang.put(WebContent.contentTypeNTriples, Lang.NTRIPLES) ;   // text/plain
-        mapContentTypeToLang.put(WebContent.contentTypeNTriplesAlt, Lang.NTRIPLES) ;
-        
-        
-        mapContentTypeToLang.put(WebContent.contentTypeTriG, Lang.TRIG) ;
-        mapContentTypeToLang.put(WebContent.contentTypeTriGAlt1, Lang.TRIG) ;
-        mapContentTypeToLang.put(WebContent.contentTypeTriGAlt2, Lang.TRIG) ;
-        mapContentTypeToLang.put(WebContent.contentTypeNQuads, Lang.NQUADS) ;
-        mapContentTypeToLang.put(WebContent.contentTypeNQuadsAlt1, Lang.NQUADS) ;
-        mapContentTypeToLang.put(WebContent.contentTypeNQuadsAlt2, Lang.NQUADS) ;
-    }
-    // ---- 
-
     public static MediaType contentType(HttpServletRequest request)
     {
         String x = request.getHeader(HttpNames.hContentType) ;
@@ -80,48 +59,24 @@ public class FusekiLib
 
     private static Map<Lang, String> mapLangToWriterName =  new HashMap<Lang, String>() ;
     static {
-        mapLangToWriterName.put(Lang.N3, WebContent.langN3) ;
-        mapLangToWriterName.put(Lang.RDFJSON, WebContent.langRdfJson) ;
-        mapLangToWriterName.put(Lang.TURTLE, WebContent.langTurtle) ;
-        mapLangToWriterName.put(Lang.NTRIPLES, WebContent.langNTriples) ;
-        mapLangToWriterName.put(Lang.RDFXML, WebContent.langRDFXML) ;
+        mapLangToWriterName.put(RDFLanguages.N3, WebContent.langN3) ;
+        mapLangToWriterName.put(RDFLanguages.RDFJSON, WebContent.langRdfJson) ;
+        mapLangToWriterName.put(RDFLanguages.TURTLE, WebContent.langTurtle) ;
+        mapLangToWriterName.put(RDFLanguages.NTRIPLES, WebContent.langNTriples) ;
+        mapLangToWriterName.put(RDFLanguages.RDFXML, WebContent.langRDFXML) ;
     }
     
+    private static Model dummy = ModelFactory.createDefaultModel() ;
     public static RDFWriter chooseWriter(Lang lang)        
     {
         if ( lang == null )
-            lang = Lang.RDFXML ;
+            lang = RDFLanguages.RDFXML ;
         String name = mapLangToWriterName.get(lang) ;
-        
         if ( name == null )
             throw new RiotException("Not a triples language: "+lang) ;
         return dummy.getWriter(name) ;
     }
 
-//    static public MediaType match(String headerString, AcceptList offerList)
-//    {
-//        AcceptList l = new AcceptList(headerString) ;
-//        return AcceptList.match(l, offerList) ;
-//    }
-//
-//    public static String match(String headerString, String str)
-//    {
-//        AcceptList l = new AcceptList(headerString) ;
-//        MediaType aItem = new MediaType(str) ;   
-//    
-//        MediaType m = l.match(aItem) ;
-//        if ( m == null )
-//            return null ;
-//        return m.toHeaderString() ;
-//    }
-//
-//    public static boolean accept(String headerString, String str)
-//    {
-//        AcceptList l = new AcceptList(headerString) ;
-//        MediaType aItem = new MediaType(str) ;
-//        return l.accepts(aItem) ;
-//    }
-
     static String fmtRequest(HttpServletRequest request)
     {
         StringBuffer sbuff = new StringBuffer() ;
@@ -181,7 +136,7 @@ public class FusekiLib
     
     public static String safeParameter(HttpServletRequest request, String pName)
     {
-        String value = request.getParameter("dataset") ;
+        String value = request.getParameter(pName) ;
         value = StringUtils.replaceChars(value, "\r", "") ;
         value = StringUtils.replaceChars(value, "\n", "") ;
         return value ; 

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/conneg/WebLib.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/conneg/WebLib.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/conneg/WebLib.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/conneg/WebLib.java Tue Jan  8 19:07:23 2013
@@ -43,7 +43,6 @@ public class WebLib
     public static String getAccept(HttpServletRequest httpRequest)
     {
         // There can be multiple accept headers -- note many tools don't allow these to be this way (e.g. wget, curl)
-        @SuppressWarnings("unchecked")
         Enumeration<String> en = httpRequest.getHeaders(HttpNames.hAccept) ;
         if ( ! en.hasMoreElements() )
             return null ;

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/DatasetGraphAccessorBasic.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/DatasetGraphAccessorBasic.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/DatasetGraphAccessorBasic.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/DatasetGraphAccessorBasic.java Tue Jan  8 19:07:23 2013
@@ -19,9 +19,10 @@
 package org.apache.jena.fuseki.http;
 
 
-import com.hp.hpl.jena.graph.Graph ;
-import com.hp.hpl.jena.graph.Node ;
-import com.hp.hpl.jena.sparql.core.DatasetGraph ;
+import com.hp.hpl.jena.graph.Graph ;
+import com.hp.hpl.jena.graph.GraphUtil ;
+import com.hp.hpl.jena.graph.Node ;
+import com.hp.hpl.jena.sparql.core.DatasetGraph ;
 
 /** 
  * General implementation of operations for the SPARQL HTTP Update protocol
@@ -113,12 +114,12 @@ public class DatasetGraphAccessorBasic i
     private void clearGraph(Graph graph)
     {
         if ( ! graph.isEmpty() )
-            graph.getBulkUpdateHandler().removeAll() ;
+            graph.clear() ;
     }
 
     private void mergeGraph(Graph graph, Graph data)
     {
-        graph.getBulkUpdateHandler().add(data) ;
+        GraphUtil.addInto(graph, data) ;
     }
 
 }

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/DatasetGraphAccessorHTTP.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/DatasetGraphAccessorHTTP.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/DatasetGraphAccessorHTTP.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/DatasetGraphAccessorHTTP.java Tue Jan  8 19:07:23 2013
@@ -30,28 +30,26 @@ import org.apache.http.HttpVersion ;
 import org.apache.http.client.HttpClient ;
 import org.apache.http.client.methods.* ;
 import org.apache.http.entity.InputStreamEntity ;
-import org.apache.http.impl.client.DefaultHttpClient ;
+import org.apache.http.impl.client.SystemDefaultHttpClient ;
 import org.apache.http.params.BasicHttpParams ;
 import org.apache.http.params.HttpConnectionParams ;
 import org.apache.http.params.HttpParams ;
 import org.apache.http.params.HttpProtocolParams ;
-import org.apache.http.protocol.HTTP ;
 import org.apache.jena.atlas.io.IO ;
 import org.apache.jena.atlas.lib.IRILib ;
-import org.apache.jena.atlas.lib.Sink ;
 import org.apache.jena.atlas.logging.Log ;
 import org.apache.jena.atlas.web.TypedInputStream ;
 import org.apache.jena.fuseki.* ;
 import org.apache.jena.fuseki.migrate.UnmodifiableGraph ;
-import org.openjena.riot.Lang ;
-import org.openjena.riot.RiotReader ;
-import org.openjena.riot.WebContent ;
-import org.openjena.riot.lang.LangRIOT ;
-import org.openjena.riot.lang.SinkTriplesToGraph ;
+import org.apache.jena.riot.Lang ;
+import org.apache.jena.riot.RiotReader ;
+import org.apache.jena.riot.WebContent ;
+import org.apache.jena.riot.lang.LangRIOT ;
+import org.apache.jena.riot.system.StreamRDF ;
+import org.apache.jena.riot.system.StreamRDFLib ;
 
 import com.hp.hpl.jena.graph.Graph ;
 import com.hp.hpl.jena.graph.Node ;
-import com.hp.hpl.jena.graph.Triple ;
 import com.hp.hpl.jena.rdf.model.Model ;
 import com.hp.hpl.jena.rdf.model.ModelFactory ;
 import com.hp.hpl.jena.sparql.graph.GraphFactory ;
@@ -176,7 +174,7 @@ public class DatasetGraphAccessorHTTP im
         HttpParams httpParams$ = new BasicHttpParams() ;
         // See DefaultHttpClient.createHttpParams
         HttpProtocolParams.setVersion(httpParams$,               HttpVersion.HTTP_1_1);
-        HttpProtocolParams.setContentCharset(httpParams$,        HTTP.DEFAULT_CONTENT_CHARSET);
+        HttpProtocolParams.setContentCharset(httpParams$,        WebContent.charsetUTF8);
         HttpProtocolParams.setUseExpectContinue(httpParams$,     true);
         HttpConnectionParams.setTcpNoDelay(httpParams$,          true);
         HttpConnectionParams.setSocketBufferSize(httpParams$,    32*1024);
@@ -194,7 +192,7 @@ public class DatasetGraphAccessorHTTP im
 
     private Graph exec(String targetStr, Graph graphToSend, HttpUriRequest httpRequest, boolean processBody)
     {
-        HttpClient httpclient = new DefaultHttpClient(httpParams) ;
+        HttpClient httpclient = new SystemDefaultHttpClient(httpParams) ;
         
         if ( graphToSend != null )
         {
@@ -207,7 +205,7 @@ public class DatasetGraphAccessorHTTP im
             ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()) ;
             InputStreamEntity reqEntity = new InputStreamEntity(in, bytes.length) ;
             reqEntity.setContentType(WebContent.contentTypeRDFXML) ;
-            reqEntity.setContentEncoding(HTTP.UTF_8) ;
+            reqEntity.setContentEncoding(WebContent.charsetUTF8) ;
             HttpEntity entity = reqEntity ;
             ((HttpEntityEnclosingRequestBase)httpRequest).setEntity(entity) ;
         }
@@ -270,7 +268,7 @@ public class DatasetGraphAccessorHTTP im
                 InputStream instream = entity.getContent() ;
 //                String mimeType = ConNeg.chooseContentType(request, rdfOffer, ConNeg.acceptRDFXML).getAcceptType() ;
 //                String charset = ConNeg.chooseCharset(request, charsetOffer, ConNeg.charsetUTF8).getAcceptType() ;
-                ts = new TypedInputStream(instream, contentType, charset) ;
+                ts = new TypedInputStream(instream, contentType, charset, null) ;
             }
             Graph graph = GraphFactory.createGraphMem() ;
             if ( processBody )
@@ -294,11 +292,11 @@ public class DatasetGraphAccessorHTTP im
         // Either it's XML and so the XML parser deals with it, or the 
         // language determines the charset and the parsers offer InputStreams.   
        
-        Lang lang = FusekiLib.langFromContentType(ts.getMediaType()) ;
+        Lang lang = FusekiLib.langFromContentType(ts.getContentType()) ;
         if ( lang == null )
-            throw new FusekiException("Unknown lang for "+ts.getMediaType()) ;
-        Sink<Triple> sink = new SinkTriplesToGraph(graph) ;
-        LangRIOT parser = RiotReader.createParserTriples(ts, lang, base, sink) ;
+            throw new FusekiException("Unknown lang for "+ts.getMediaType()) ;
+        StreamRDF dest = StreamRDFLib.graph(graph) ;
+        LangRIOT parser = RiotReader.createParser(ts, lang, base, dest) ;
         parser.parse() ;
         IO.close(ts) ;
     }    

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/HttpSC.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/HttpSC.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/HttpSC.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/HttpSC.java Tue Jan  8 19:07:23 2013
@@ -670,6 +670,7 @@ public class HttpSC
     public final static int UNSUPPORTED_MEDIA_TYPE_415 = 415;
     public final static int REQUESTED_RANGE_NOT_SATISFIABLE_416 = 416;
     public final static int EXPECTATION_FAILED_417 = 417;
+    public final static int I_AM_A_TEAPOT_418 = 418;        // RFC 2324
     public final static int UNPROCESSABLE_ENTITY_422 = 422;
     public final static int LOCKED_423 = 423;
     public final static int FAILED_DEPENDENCY_424 = 424;
@@ -701,7 +702,8 @@ public class HttpSC
         /*
          * --------------------------------------------------------------------
          * Informational messages in 1xx series. As defined by ... RFC 1945 -
-         * HTTP/1.0 RFC 2616 - HTTP/1.1 RFC 2518 - WebDAV
+         * HTTP/1.0 RFC 2616 - HTTP/1.1 RFC 2518 - WebDAV 
+         * and RFC2324
          */
 
         /** <code>100 Continue</code> */
@@ -799,6 +801,10 @@ public class HttpSC
         REQUESTED_RANGE_NOT_SATISFIABLE(REQUESTED_RANGE_NOT_SATISFIABLE_416, "Requested Range Not Satisfiable"),
         /** <code>417 Expectation Failed</code> */
         EXPECTATION_FAILED(EXPECTATION_FAILED_417, "Expectation Failed"),
+        /** <code>417 I'm a teapot</code>
+         * The response MAY be short and stout.
+         */
+        I_AM_A_TEAPOT(I_AM_A_TEAPOT_418, "I'm a teapot"),
         /** <code>422 Unprocessable Entity</code> */
         UNPROCESSABLE_ENTITY(UNPROCESSABLE_ENTITY_422, "Unprocessable Entity"),
         /** <code>423 Locked</code> */

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/UpdateRemote.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/UpdateRemote.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/UpdateRemote.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/http/UpdateRemote.java Tue Jan  8 19:07:23 2013
@@ -48,36 +48,5 @@ public class UpdateRemote
     {
         UpdateProcessor proc = UpdateExecutionFactory.createRemote(request, serviceURL) ;
         proc.execute() ;
-
-//        HttpPost httpPost = new HttpPost(serviceURL) ;
-//        ByteArrayOutputStream b_out = new ByteArrayOutputStream() ;
-//        IndentedWriter out = new IndentedWriter(b_out) ; 
-//        UpdateWriter.output(request, out) ;
-//        out.flush() ;
-//        byte[] bytes = b_out.toByteArray() ;
-//        AbstractHttpEntity reqEntity = new ByteArrayEntity(bytes) ;
-//        reqEntity.setContentType(WebContent.contentTypeSPARQLUpdate) ;
-//        reqEntity.setContentEncoding(HTTP.UTF_8) ;
-//        httpPost.setEntity(reqEntity) ;
-//        HttpClient httpclient = new DefaultHttpClient() ;
-//
-//        try
-//        {
-//            HttpResponse response = httpclient.execute(httpPost) ;
-//            int responseCode = response.getStatusLine().getStatusCode() ;
-//            String responseMessage = response.getStatusLine().getReasonPhrase() ;
-//            
-//            if ( responseCode == HttpSC.NO_CONTENT_204 )
-//                return ;
-//            if ( responseCode == HttpSC.OK_200 )
-//                // But what was the content?
-//                // TODO read body 
-//                return ; 
-//            throw new UpdateException(responseCode+" "+responseMessage) ;
-//        } catch (IOException ex)
-//        {
-//            throw new UpdateException(ex) ;
-//        }
-            
     }
 }

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/mgt/ActionBackup.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/mgt/ActionBackup.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/mgt/ActionBackup.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/mgt/ActionBackup.java Tue Jan  8 19:07:23 2013
@@ -39,7 +39,7 @@ import org.apache.jena.fuseki.server.Dat
 import org.apache.jena.fuseki.server.DatasetRegistry ;
 import org.apache.jena.fuseki.servlets.HttpAction ;
 import org.apache.jena.fuseki.servlets.ServletBase ;
-import org.openjena.riot.out.NQuadsWriter ;
+import org.apache.jena.riot.out.NQuadsWriter ;
 
 import com.hp.hpl.jena.sparql.core.DatasetGraph ;
 import com.hp.hpl.jena.sparql.util.Utils ;

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/migrate/GraphLoadUtils.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/migrate/GraphLoadUtils.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/migrate/GraphLoadUtils.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/migrate/GraphLoadUtils.java Tue Jan  8 19:07:23 2013
@@ -21,17 +21,15 @@ package org.apache.jena.fuseki.migrate;
 
 import java.io.InputStream ;
 
-import org.apache.jena.atlas.lib.Sink ;
 import org.apache.jena.fuseki.Fuseki ;
-import org.openjena.riot.Lang ;
-import org.openjena.riot.RiotException ;
-import org.openjena.riot.RiotReader ;
-import org.openjena.riot.lang.LangRIOT ;
-import org.openjena.riot.lang.SinkTriplesToGraph ;
+import org.apache.jena.riot.Lang ;
+import org.apache.jena.riot.RDFDataMgr ;
+import org.apache.jena.riot.RDFLanguages ;
+import org.apache.jena.riot.system.StreamRDF ;
+import org.apache.jena.riot.system.StreamRDFLib ;
 
 import com.hp.hpl.jena.graph.Factory ;
 import com.hp.hpl.jena.graph.Graph ;
-import com.hp.hpl.jena.graph.Triple ;
 import com.hp.hpl.jena.rdf.model.Model ;
 import com.hp.hpl.jena.rdf.model.ModelFactory ;
 
@@ -71,17 +69,11 @@ public class GraphLoadUtils
     // ** Worker.
     private static void readUtil(Graph graph, String uri, int limit)
     {
-        Lang lang = Lang.guess(uri, Lang.RDFXML) ;
-        
-        Sink<Triple> sink = new SinkTriplesToGraph(graph) ;
-        sink = new SinkLimited<Triple>(sink, limit) ;
-        
-        // TODO Conneg - awaiting RIOT code upgrade.
-        InputStream input = Fuseki.webFileManager.open(uri) ;
-        
-        LangRIOT parser = RiotReader.createParserTriples(input, lang, uri, sink) ;
-        try {
-            parser.parse() ;
-        } catch (RiotException ex) { throw ex ; }
+        Lang lang = RDFLanguages.filenameToLang(uri, RDFLanguages.RDFXML) ;
+        StreamRDF sink = StreamRDFLib.graph(graph) ;
+        sink = new SinkRDFLimited(sink, limit) ;
+
+        InputStream input = Fuseki.webStreamManager.open(uri) ;
+        RDFDataMgr.parse(sink, input, uri, lang, null) ;
     }
 }

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/migrate/WebIO.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/migrate/WebIO.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/migrate/WebIO.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/migrate/WebIO.java Tue Jan  8 19:07:23 2013
@@ -26,7 +26,7 @@ import org.apache.http.HttpResponse ;
 import org.apache.http.client.HttpClient ;
 import org.apache.http.client.methods.HttpGet ;
 import org.apache.http.client.methods.HttpUriRequest ;
-import org.apache.http.impl.client.DefaultHttpClient ;
+import org.apache.http.impl.client.SystemDefaultHttpClient ;
 import org.apache.jena.atlas.io.IO ;
 import org.apache.jena.fuseki.FusekiRequestException ;
 
@@ -36,7 +36,7 @@ public class WebIO
     public static String exec_get(String url)
     {
         HttpUriRequest httpGet = new HttpGet(url) ;
-        HttpClient httpclient = new DefaultHttpClient() ;
+        HttpClient httpclient = new SystemDefaultHttpClient() ;
         try {
             HttpResponse response = httpclient.execute(httpGet) ;
             int responseCode = response.getStatusLine().getStatusCode() ;

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/DatasetRef.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/DatasetRef.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/DatasetRef.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/DatasetRef.java Tue Jan  8 19:07:23 2013
@@ -26,6 +26,7 @@ import com.hp.hpl.jena.sparql.core.Datas
 public class DatasetRef
 {
     public String name                          = null ;
+    
     public List<String> queryEP                 = new ArrayList<String>() ;
     public List<String> updateEP                = new ArrayList<String>() ;
     public List<String> uploadEP                = new ArrayList<String>() ;
@@ -33,6 +34,9 @@ public class DatasetRef
     public List<String> readWriteGraphStoreEP   = new ArrayList<String>() ;
     public DatasetGraph dataset                 = null ;
 
+    //TODO Need to be able to set this from the config file.  
+    public boolean allowDatasetUpdate              = false;
+    
     public boolean allowTimeoutOverride         = false;
     public long maximumTimeoutOverride          = Long.MAX_VALUE;
 }

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/FusekiConfig.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/FusekiConfig.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/FusekiConfig.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/FusekiConfig.java Tue Jan  8 19:07:23 2013
@@ -97,6 +97,7 @@ public class FusekiConfig
             sDesc.updateEP.add(HttpNames.ServiceUpdate) ;
             sDesc.uploadEP.add(HttpNames.ServiceUpload) ;
             sDesc.readWriteGraphStoreEP.add(HttpNames.ServiceData) ;
+            sDesc.allowDatasetUpdate = true ;
         }
         else
             sDesc.readGraphStoreEP.add(HttpNames.ServiceData) ;

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/FusekiVocab.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/FusekiVocab.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/FusekiVocab.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/FusekiVocab.java Tue Jan  8 19:07:23 2013
@@ -20,7 +20,7 @@ package org.apache.jena.fuseki.server;
 
 import org.apache.jena.fuseki.FusekiException ;
 import org.apache.jena.iri.IRI ;
-import org.openjena.riot.system.IRIResolver ;
+import org.apache.jena.riot.system.IRIResolver ;
 
 import com.hp.hpl.jena.rdf.model.Property ;
 import com.hp.hpl.jena.rdf.model.Resource ;

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/SPARQLServer.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/SPARQLServer.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/SPARQLServer.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/server/SPARQLServer.java Tue Jan  8 19:07:23 2013
@@ -24,6 +24,7 @@ import static org.apache.jena.fuseki.Fus
 import java.io.FileInputStream ;
 import java.util.* ;
 
+import javax.servlet.DispatcherType ;
 import javax.servlet.http.HttpServlet ;
 
 import org.apache.jena.fuseki.Fuseki ;
@@ -36,6 +37,7 @@ import org.apache.jena.fuseki.validation
 import org.apache.jena.fuseki.validation.IRIValidator ;
 import org.apache.jena.fuseki.validation.QueryValidator ;
 import org.apache.jena.fuseki.validation.UpdateValidator ;
+import org.apache.jena.riot.WebContent ;
 import org.eclipse.jetty.http.MimeTypes ;
 import org.eclipse.jetty.server.Connector ;
 import org.eclipse.jetty.server.Server ;
@@ -44,9 +46,7 @@ import org.eclipse.jetty.servlet.Default
 import org.eclipse.jetty.servlet.ServletContextHandler ;
 import org.eclipse.jetty.servlet.ServletHolder ;
 import org.eclipse.jetty.xml.XmlConfiguration ;
-import org.openjena.riot.WebContent ;
 
-import org.eclipse.jetty.server.DispatcherType;
 import org.eclipse.jetty.servlets.GzipFilter;
 
 
@@ -215,7 +215,8 @@ public class SPARQLServer
     // The überservlet sits on the dataset name and handles all requests.
     // Includes direct naming and quad access to the dataset.
     public static boolean überServlet = false ;
-
+    private static List<String> ListOfEmptyString = Arrays.asList("") ;
+    
     private void configureOneDataset(ServletContextHandler context, DatasetRef sDesc, boolean enableCompression)
     {
         String datasetPath = sDesc.name ;
@@ -246,12 +247,14 @@ public class SPARQLServer
             addServlet(context, datasetPath, sparqlUpload,  sDesc.uploadEP,   false) ;    // No point - no results of any size.
             addServlet(context, datasetPath, sparqlHttpR,   sDesc.readGraphStoreEP,       enableCompression) ;
             addServlet(context, datasetPath, sparqlHttpRW,  sDesc.readWriteGraphStoreEP,  enableCompression) ;
+            // This adds direct operations on the dataset itself. 
+            //addServlet(context, datasetPath, sparqlDataset, ListOfEmptyString, enableCompression) ;
         }
         else
         {
             // This is the servlet that analyses requests and dispatches them to the appropriate servlet.
             //    SPARQL Query, SPARQL Update -- handles dataset?query=  dataset?update=
-            //    Graph Store Protocol (direct and indirect naming).
+            //    Graph Store Protocol (direct and indirect naming) if enabled.
             //    GET/PUT/POST on the dataset itself.
             // It also checks for a request that looks like a service request and passes it
             // on to the service (this takes precedence over direct naming).

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/DumpServlet.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/DumpServlet.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/DumpServlet.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/DumpServlet.java Tue Jan  8 19:07:23 2013
@@ -155,7 +155,6 @@ public class DumpServlet extends HttpSer
             
             {
                 // To do: create a string for the output so can send to console and return it.
-                @SuppressWarnings("unchecked")
                 Enumeration<String> en = req.getHeaderNames() ;
 
                 for ( ; en.hasMoreElements() ; )
@@ -166,7 +165,6 @@ public class DumpServlet extends HttpSer
                 }
             }
             
-            @SuppressWarnings("unchecked")
             Enumeration<String> en2 = req.getAttributeNames() ;
             if ( en2.hasMoreElements() )
                 pw.println();
@@ -196,7 +194,6 @@ public class DumpServlet extends HttpSer
 //                for ( String value : map.get(name) )
 //                    pw.println("Param: "+name + " = " + value) ;
             
-            @SuppressWarnings("unchecked")
             Enumeration<Locale> en = req.getLocales() ;
             if ( en.hasMoreElements() )
                 pw.println();
@@ -282,7 +279,6 @@ the value has
         pw.println("serverInfo:  '"+sc.getServerInfo()+"'");
 
         {
-            @SuppressWarnings("unchecked")
             Enumeration<String> en = sc.getInitParameterNames();
             if (en != null) {
                 pw.println("initParameters: ");
@@ -295,7 +291,6 @@ the value has
         }
         
         {
-            @SuppressWarnings("unchecked")
             Enumeration<String> en = sc.getAttributeNames();
             if (en != null) {
                 pw.println("attributes: ");

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/HttpServletResponseTracker.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/HttpServletResponseTracker.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/HttpServletResponseTracker.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/HttpServletResponseTracker.java Tue Jan  8 19:07:23 2013
@@ -79,6 +79,7 @@ public class HttpServletResponseTracker 
     }
 
     @Override
+    @Deprecated
     public void setStatus(int sc, String sm)
     {
         statusCode = sc ;

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/REST_Quads.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/REST_Quads.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/REST_Quads.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/REST_Quads.java Tue Jan  8 19:07:23 2013
@@ -25,21 +25,21 @@ import java.io.IOException ;
 import javax.servlet.ServletOutputStream ;
 import javax.servlet.http.HttpServletRequest ;
 
-import org.apache.jena.atlas.lib.Sink ;
 import org.apache.jena.atlas.web.MediaType ;
 import org.apache.jena.atlas.web.TypedOutputStream ;
 import org.apache.jena.fuseki.Fuseki ;
 import org.apache.jena.fuseki.FusekiLib ;
 import org.apache.jena.fuseki.HttpNames ;
-import org.openjena.riot.Lang ;
-import org.openjena.riot.RiotReader ;
-import org.openjena.riot.RiotWriter ;
-import org.openjena.riot.lang.LangRIOT ;
-import org.openjena.riot.lang.SinkTriplesToGraph ;
+import org.apache.jena.riot.Lang ;
+import org.apache.jena.riot.RDFLanguages ;
+import org.apache.jena.riot.RiotReader ;
+import org.apache.jena.riot.RiotWriter ;
+import org.apache.jena.riot.lang.LangRIOT ;
+import org.apache.jena.riot.system.StreamRDF ;
+import org.apache.jena.riot.system.StreamRDFLib ;
 
 import com.hp.hpl.jena.graph.Graph ;
 import com.hp.hpl.jena.graph.Node ;
-import com.hp.hpl.jena.graph.Triple ;
 import com.hp.hpl.jena.sparql.core.DatasetGraph ;
 
 /** 
@@ -68,21 +68,21 @@ public class REST_Quads extends SPARQL_R
         TypedOutputStream out = new TypedOutputStream(output, mediaType) ;
         Lang lang = FusekiLib.langFromContentType(mediaType.getContentType()) ;
         if ( lang == null )
-            lang = Lang.TRIG ;
+            lang = RDFLanguages.TRIG ;
 
         if ( action.verbose )
             log.info(format("[%d]   Get: Content-Type=%s, Charset=%s => %s", 
                                   action.id, mediaType.getContentType(), mediaType.getCharset(), lang.getName())) ;
-        if ( ! lang.isQuads() )
+        if ( ! RDFLanguages.isQuads(lang) )
             errorBadRequest("Not a quads format: "+mediaType) ;
         
         action.beginRead() ;
         try {
             DatasetGraph dsg = action.getActiveDSG() ;
             
-            if ( lang == Lang.NQUADS )
+            if ( lang == RDFLanguages.NQUADS )
                 RiotWriter.writeNQuads(out, dsg) ;
-            else if ( lang == Lang.TRIG )
+            else if ( lang == RDFLanguages.TRIG )
                 errorBadRequest("TriG - Not implemented (yet) : "+mediaType) ;
             else
                 errorBadRequest("No handled: "+mediaType) ;
@@ -112,24 +112,77 @@ public class REST_Quads extends SPARQL_R
     @Override
     protected void doPost(HttpActionREST action)
     { 
-        if ( ! Fuseki.graphStoreProtocolMode )
+        if ( ! action.getDatasetRef().allowDatasetUpdate )
             errorMethodNotAllowed("POST") ;
+
+        // Graph Store Protocol mode - POST triples to dataset causes
+        // a new graph to be created and the new URI returned via Location.
+        // Normally off.  
+        // When off, POST of triples goes to default graph.
+        boolean gspMode = Fuseki.graphStoreProtocolPostCreate ;
         
         // Code to pass the GSP test suite.
         // Not necessarily good code.
         String x = action.request.getContentType() ;
+        if ( x == null )
+            errorBadRequest("Content-type required for data format") ;
         
         MediaType mediaType = MediaType.create(x) ;
         Lang lang = FusekiLib.langFromContentType(mediaType.getContentType()) ;
         if ( lang == null )
-            lang = Lang.TRIG ;
+            lang = RDFLanguages.TRIG ;
 
         if ( action.verbose )
             log.info(format("[%d]   Post: Content-Type=%s, Charset=%s => %s", 
                                   action.id, mediaType.getContentType(), mediaType.getCharset(), lang.getName())) ;
-        if ( lang.isQuads() )
-            errorBadRequest("Quads format: "+mediaType) ;
         
+        if ( RDFLanguages.isQuads(lang) )
+            doPostQuads(action, lang) ;
+        else if ( gspMode && RDFLanguages.isTriples(lang) )
+            doPostTriplesGSP(action, lang) ;
+        else if ( RDFLanguages.isTriples(lang) )
+            doPostTriples(action, lang) ;
+        else
+            errorBadRequest("Not a triples or quads format: "+mediaType) ;
+    }
+        
+    protected void doPostQuads(HttpActionREST action, Lang lang)
+    {
+        action.beginWrite() ;
+        try {
+            String name = action.request.getRequestURL().toString() ;
+            DatasetGraph dsg = action.getActiveDSG() ;
+            StreamRDF dest = StreamRDFLib.dataset(dsg) ;
+            LangRIOT parser = RiotReader.createParser(action.request.getInputStream(), lang, name , dest) ;
+            parser.parse() ;
+            action.commit();
+            success(action) ;
+        } catch (IOException ex) { action.abort() ; } 
+        finally { action.endWrite() ; }
+    }
+    
+  
+    // POST triples to dataset -- send to default graph.  
+    protected void doPostTriples(HttpActionREST action, Lang lang) 
+    {
+        action.beginWrite() ;
+        try {
+            DatasetGraph dsg = action.getActiveDSG() ;
+            // This should not be anythign other than the datasets name via this route.  
+            String name = action.request.getRequestURL().toString() ;
+            //log.info(format("[%d] ** Content-length: %d", action.id, action.request.getContentLength())) ;  
+            Graph g = dsg.getDefaultGraph() ;
+            StreamRDF dest = StreamRDFLib.graph(g) ;
+            LangRIOT parser = RiotReader.createParser(action.request.getInputStream(), lang, name , dest) ;
+            parser.parse() ;
+            action.commit();
+            success(action) ;
+        } catch (IOException ex) { action.abort() ; } 
+        finally { action.endWrite() ; }
+    }
+    
+    protected void doPostTriplesGSP(HttpActionREST action, Lang lang) 
+    {
         action.beginWrite() ;
         try {
             DatasetGraph dsg = action.getActiveDSG() ;
@@ -141,9 +194,8 @@ public class REST_Quads extends SPARQL_R
             name = name+(++counter) ;
             Node gn = Node.createURI(name) ;
             Graph g = dsg.getGraph(gn) ;
-            Sink<Triple> sink = new SinkTriplesToGraph(g) ;
-
-            LangRIOT parser = RiotReader.createParserTriples(action.request.getInputStream(), lang, name , sink) ;
+            StreamRDF dest = StreamRDFLib.graph(g) ;
+            LangRIOT parser = RiotReader.createParser(action.request.getInputStream(), lang, name , dest) ;
             parser.parse() ;
             log.info(format("[%d] Location: %s", action.id, name)) ;
             action.response.setHeader("Location",  name) ;
@@ -151,9 +203,7 @@ public class REST_Quads extends SPARQL_R
             successCreated(action) ;
         } catch (IOException ex) { action.abort() ; } 
         finally { action.endWrite() ; }
-        
     }
-    
 
     @Override
     protected void doDelete(HttpActionREST action)

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/ResponseModel.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/ResponseModel.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/ResponseModel.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/ResponseModel.java Tue Jan  8 19:07:23 2013
@@ -32,8 +32,8 @@ import org.apache.jena.fuseki.FusekiLib 
 import org.apache.jena.fuseki.conneg.ConNeg ;
 import org.apache.jena.fuseki.conneg.WebLib ;
 import org.apache.jena.fuseki.http.HttpSC ;
-import org.openjena.riot.Lang ;
-import org.openjena.riot.WebContent ;
+import org.apache.jena.riot.Lang ;
+import org.apache.jena.riot.WebContent ;
 
 import com.hp.hpl.jena.rdf.model.Model ;
 import com.hp.hpl.jena.rdf.model.RDFWriter ;

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/ResponseResultSet.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/ResponseResultSet.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/ResponseResultSet.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/ResponseResultSet.java Tue Jan  8 19:07:23 2013
@@ -33,8 +33,8 @@ import org.apache.jena.fuseki.DEF ;
 import org.apache.jena.fuseki.FusekiException ;
 import org.apache.jena.fuseki.conneg.ConNeg ;
 import org.apache.jena.fuseki.http.HttpSC ;
+import org.apache.jena.riot.WebContent ;
 import static org.apache.jena.atlas.lib.Lib.equal ;
-import org.openjena.riot.WebContent ;
 import org.slf4j.Logger ;
 import org.slf4j.LoggerFactory ;
 

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_Query.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_Query.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_Query.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_Query.java Tue Jan  8 19:07:23 2013
@@ -47,7 +47,7 @@ import org.apache.jena.fuseki.HttpNames 
 import org.apache.jena.fuseki.http.HttpSC ;
 import org.apache.jena.fuseki.migrate.WebIO ;
 import org.apache.jena.fuseki.server.DatasetRef ;
-import org.openjena.riot.WebContent ;
+import org.apache.jena.riot.WebContent ;
 
 import com.hp.hpl.jena.query.* ;
 import com.hp.hpl.jena.rdf.model.Model ;
@@ -198,7 +198,6 @@ public abstract class SPARQL_Query exten
 
         if ( params != null )
         {
-            @SuppressWarnings("unchecked")
             Enumeration<String> en = request.getParameterNames() ;
             for ( ; en.hasMoreElements() ; )
             {

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_QueryGeneral.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_QueryGeneral.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_QueryGeneral.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_QueryGeneral.java Tue Jan  8 19:07:23 2013
@@ -26,7 +26,7 @@ import javax.servlet.http.HttpServletReq
 
 import org.apache.jena.atlas.lib.InternalErrorException ;
 import org.apache.jena.fuseki.migrate.GraphLoadUtils ;
-import org.openjena.riot.RiotException ;
+import org.apache.jena.riot.RiotException ;
 
 import com.hp.hpl.jena.query.Dataset ;
 import com.hp.hpl.jena.query.DatasetFactory ;

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_REST.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_REST.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_REST.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_REST.java Tue Jan  8 19:07:23 2013
@@ -38,22 +38,23 @@ import javax.servlet.ServletException ;
 import javax.servlet.http.HttpServletRequest ;
 import javax.servlet.http.HttpServletResponse ;
 
-import org.apache.jena.atlas.lib.Sink ;
 import org.apache.jena.atlas.web.ContentType ;
 import org.apache.jena.fuseki.FusekiLib ;
 import org.apache.jena.fuseki.HttpNames ;
 import org.apache.jena.fuseki.http.HttpSC ;
 import org.apache.jena.fuseki.server.DatasetRef ;
-import org.openjena.riot.* ;
-import org.openjena.riot.lang.LangRIOT ;
-import org.openjena.riot.lang.SinkTriplesToGraph ;
-import org.openjena.riot.system.IRIResolver ;
+import org.apache.jena.riot.Lang ;
+import org.apache.jena.riot.RiotException ;
+import org.apache.jena.riot.RiotReader ;
+import org.apache.jena.riot.WebContent ;
+import org.apache.jena.riot.lang.LangRIOT ;
+import org.apache.jena.riot.system.* ;
 import org.slf4j.Logger ;
 import org.slf4j.LoggerFactory ;
 
 import com.hp.hpl.jena.graph.Graph ;
+import com.hp.hpl.jena.graph.GraphUtil ;
 import com.hp.hpl.jena.graph.Node ;
-import com.hp.hpl.jena.graph.Triple ;
 import com.hp.hpl.jena.sparql.core.DatasetGraph ;
 import com.hp.hpl.jena.sparql.core.DatasetGraphFactory ;
 import com.hp.hpl.jena.sparql.graph.GraphFactory ;
@@ -204,7 +205,7 @@ public abstract class SPARQL_REST extend
 
     private void dispatch(HttpActionREST action)
     {
-     HttpServletRequest req = action.request ;
+        HttpServletRequest req = action.request ;
         HttpServletResponse resp = action.response ;
         String method = req.getMethod().toUpperCase() ;
 
@@ -243,7 +244,7 @@ public abstract class SPARQL_REST extend
     protected static void deleteGraph(HttpActionREST action)
     {
         if ( action.getTarget().isDefault )
-            action.getTarget().graph().getBulkUpdateHandler().removeAll() ;
+            action.getTarget().graph().clear() ;
         else
             action.getActiveDSG().removeGraph(action.getTarget().graphName) ;
     }
@@ -253,7 +254,7 @@ public abstract class SPARQL_REST extend
         if ( ! target.isGraphSet() )
         {
             Graph g = target.graph() ;
-            g.getBulkUpdateHandler().removeAll() ;
+            g.clear() ;
         }
     }
 
@@ -272,7 +273,7 @@ public abstract class SPARQL_REST extend
                 g = GraphFactory.createDefaultGraph() ;
                 dest.dsg.addGraph(dest.graphName, g) ;
             }
-            g.getBulkUpdateHandler().add(data) ;
+            GraphUtil.addInto(g, data) ;
         } catch (RuntimeException ex)
         {
             // If anything went wrong, try to backout.
@@ -357,16 +358,13 @@ public abstract class SPARQL_REST extend
     private static DatasetGraph parse(HttpActionREST action, Lang lang, String base, InputStream input)
     {
         Graph graphTmp = GraphFactory.createGraphMem() ;
-        Sink<Triple> sink = new SinkTriplesToGraph(graphTmp) ;
-        LangRIOT parser = RiotReader.createParserTriples(input, lang, base, sink) ;
+        
+        StreamRDF dest = StreamRDFLib.graph(graphTmp) ;
+        LangRIOT parser = RiotReader.createParser(input, lang, base, dest) ;
         parser.getProfile().setHandler(errorHandler) ;
-        try {
-            parser.parse() ;
-        } 
+        try { parser.parse() ; } 
         catch (RiotException ex) { errorBadRequest("Parse error: "+ex.getMessage()) ; }
-        finally { sink.close() ; }
         DatasetGraph dsgTmp = DatasetGraphFactory.create(graphTmp) ;
-        
         return dsgTmp ;
     }
     
@@ -395,7 +393,6 @@ public abstract class SPARQL_REST extend
         if ( x2 > 1 )
             errorBadRequest("Multiple ?graph in the query string of the request") ;
         
-        @SuppressWarnings("unchecked")
         Enumeration<String> en = request.getParameterNames() ;
         for ( ; en.hasMoreElements() ; )
         {

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_REST_R.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_REST_R.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_REST_R.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_REST_R.java Tue Jan  8 19:07:23 2013
@@ -30,8 +30,8 @@ import org.apache.jena.atlas.web.TypedOu
 import org.apache.jena.fuseki.FusekiLib ;
 import org.apache.jena.fuseki.HttpNames ;
 import org.apache.jena.fuseki.server.DatasetRegistry ;
-import org.openjena.riot.Lang ;
-import org.openjena.riot.WebContent ;
+import org.apache.jena.riot.Lang ;
+import org.apache.jena.riot.WebContent ;
 
 import com.hp.hpl.jena.graph.Graph ;
 import com.hp.hpl.jena.rdf.model.Model ;

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_ServletBase.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_ServletBase.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_ServletBase.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_ServletBase.java Tue Jan  8 19:07:23 2013
@@ -132,12 +132,10 @@ public abstract class SPARQL_ServletBase
         log.info(format("[%d] %s %s", id, method, url)) ; 
         if ( verbose_debug )
         {
-            @SuppressWarnings("unchecked")
             Enumeration<String> en = request.getHeaderNames() ;
             for ( ; en.hasMoreElements() ; )
             {
                 String h = en.nextElement() ;
-                @SuppressWarnings("unchecked")
                 Enumeration<String> vals = request.getHeaders(h) ;
                 if ( ! vals.hasMoreElements() )
                     log.info(format("[%d]   ",id, h)) ;

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_UberServlet.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_UberServlet.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_UberServlet.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_UberServlet.java Tue Jan  8 19:07:23 2013
@@ -30,13 +30,12 @@ import org.apache.jena.atlas.iterator.Fi
 import org.apache.jena.atlas.iterator.Iter ;
 import org.apache.jena.atlas.web.MediaType ;
 import org.apache.jena.fuseki.DEF ;
-import org.apache.jena.fuseki.Fuseki ;
 import org.apache.jena.fuseki.HttpNames ;
 import org.apache.jena.fuseki.conneg.ConNeg ;
 import org.apache.jena.fuseki.http.HttpSC ;
 import org.apache.jena.fuseki.server.DatasetRef ;
 import org.apache.jena.fuseki.server.DatasetRegistry ;
-import org.openjena.riot.WebContent ;
+import org.apache.jena.riot.WebContent ;
 
 /** This servlet can be attached to a dataset location
  *  and acts as a falserouter for all SPARQL operations
@@ -163,14 +162,6 @@ public abstract class SPARQL_UberServlet
         
         if ( ! hasTrailing && ! hasParams )
         {
-            // Action on the dataset URI.
-            if ( ! Fuseki.graphStoreProtocolMode )
-            {
-                // Security checking?
-                //executeRequest(desc, restQuads, id, request, response) ;
-                errorBadRequest("Request not support (quad operation)") ;
-                return ;
-            }
             restQuads.doCommonWorker(id, request, response) ;
             return ;
         }

Modified: jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_Update.java
URL: http://svn.apache.org/viewvc/jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_Update.java?rev=1430447&r1=1430446&r2=1430447&view=diff
==============================================================================
--- jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_Update.java (original)
+++ jena/branches/streaming-update/jena-fuseki/src/main/java/org/apache/jena/fuseki/servlets/SPARQL_Update.java Tue Jan  8 19:07:23 2013
@@ -44,8 +44,8 @@ import org.apache.jena.fuseki.HttpNames 
 import org.apache.jena.fuseki.http.HttpSC ;
 import org.apache.jena.fuseki.server.DatasetRef ;
 import org.apache.jena.iri.IRI ;
-import org.openjena.riot.WebContent ;
-import org.openjena.riot.system.IRIResolver ;
+import org.apache.jena.riot.WebContent ;
+import org.apache.jena.riot.system.IRIResolver ;
 
 import com.hp.hpl.jena.graph.Node ;
 import com.hp.hpl.jena.query.QueryParseException ;
@@ -181,7 +181,6 @@ public class SPARQL_Update extends SPARQ
     {
         if ( params != null )
         {
-            @SuppressWarnings("unchecked")
             Enumeration<String> en = request.getParameterNames() ;
             for ( ; en.hasMoreElements() ; )
             {