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 2017/06/04 08:02:15 UTC
[1/6] jena git commit: JENA-1355: Fix to VarFinder for OpPropFunc
Repository: jena
Updated Branches:
refs/heads/master cc8810d9b -> e79199a7a
JENA-1355: Fix to VarFinder for OpPropFunc
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/688006bf
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/688006bf
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/688006bf
Branch: refs/heads/master
Commit: 688006bf0318c206fc16eba2a8a97239e17060ce
Parents: 3b3ba37
Author: Andy Seaborne <an...@apache.org>
Authored: Thu Jun 1 21:41:36 2017 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Thu Jun 1 21:47:10 2017 +0100
----------------------------------------------------------------------
.../java/org/apache/jena/sparql/engine/main/VarFinder.java | 9 +++++++--
.../src/main/java/org/apache/jena/sparql/util/VarUtils.java | 8 +++++++-
.../java/org/apache/jena/sparql/algebra/TestVarFinder.java | 5 +++++
3 files changed, 19 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/688006bf/jena-arq/src/main/java/org/apache/jena/sparql/engine/main/VarFinder.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/engine/main/VarFinder.java b/jena-arq/src/main/java/org/apache/jena/sparql/engine/main/VarFinder.java
index b781ba2..8db255e 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/engine/main/VarFinder.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/engine/main/VarFinder.java
@@ -355,8 +355,13 @@ public class VarFinder
@Override
public void visit(OpPropFunc opPropFunc) {
- VarUtils.addVarNodes(defines, opPropFunc.getSubjectArgs().getArgList()) ;
- VarUtils.addVarNodes(defines, opPropFunc.getObjectArgs().getArgList()) ;
+ VarUtils.addVars(defines, opPropFunc.getSubjectArgs()) ;
+ VarUtils.addVars(defines, opPropFunc.getObjectArgs()) ;
+
+ mergeVars(opPropFunc.getSubOp());
+
+ // If definite (from the property function), remove from optDefines.
+ optDefines.removeAll(this.defines);
}
// Ops that add nothing to variable scoping.
http://git-wip-us.apache.org/repos/asf/jena/blob/688006bf/jena-arq/src/main/java/org/apache/jena/sparql/util/VarUtils.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/util/VarUtils.java b/jena-arq/src/main/java/org/apache/jena/sparql/util/VarUtils.java
index 166293d..3247ba7 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/util/VarUtils.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/util/VarUtils.java
@@ -25,6 +25,7 @@ import java.util.Set;
import org.apache.jena.graph.Node;
import org.apache.jena.graph.Triple;
import org.apache.jena.sparql.core.* ;
+import org.apache.jena.sparql.pfunction.PropFuncArg;
public class VarUtils {
public static Set<Var> getVars(Triple triple) {
@@ -87,5 +88,10 @@ public class VarUtils {
}
}
-
+ public static void addVars(Collection<Var> acc, PropFuncArg arg) {
+ if ( arg.isNode() )
+ addVar(acc, arg.getArg());
+ else
+ addVarNodes(acc, arg.getArgList());
+ }
}
http://git-wip-us.apache.org/repos/asf/jena/blob/688006bf/jena-arq/src/test/java/org/apache/jena/sparql/algebra/TestVarFinder.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/test/java/org/apache/jena/sparql/algebra/TestVarFinder.java b/jena-arq/src/test/java/org/apache/jena/sparql/algebra/TestVarFinder.java
index b3eb539..c476180 100644
--- a/jena-arq/src/test/java/org/apache/jena/sparql/algebra/TestVarFinder.java
+++ b/jena-arq/src/test/java/org/apache/jena/sparql/algebra/TestVarFinder.java
@@ -54,6 +54,11 @@ public class TestVarFinder extends BaseTest
@Test public void varfind_04_4() { varfindFilterOnly("(leftjoin (bgp (?x <q> <v>)) (filter (?Z) (bgp (?s <p> <o>))))", "Z") ; }
@Test public void varfind_04_5() { varfindFilterOnly("(leftjoin (bgp (?x <q> <v>)) (bgp (?s <p> <o>)) ?Z)", "Z") ; }
+ @Test public void varfind_05_1() { varfindFixed("(propfunc :pf ?x (?y ?z) (table unit))", "x", "y", "z"); }
+ @Test public void varfind_05_2() { varfindFixed("(propfunc :pf ?x (?y ?z) (bgp (?x ?p ?o)))", "x", "y", "z", "p", "o"); }
+ @Test public void varfind_05_3() { varfindFixed("(propfunc :pf ?x (?y ?z) (leftjoin (table unit) (bgp (?x ?p ?o)) ))", "x", "y", "z"); }
+ @Test public void varfind_05_4() { varfindOpt( "(propfunc :pf ?x (?y ?z) (leftjoin (table unit) (bgp (?x ?p ?o)) ))", "p", "o"); }
+
private static void varfindFixed(String string, String... vars) {
varfind(string, vars, null, null, null) ;
}
[4/6] jena git commit: Remove a blank line.
Posted by an...@apache.org.
Remove a blank line.
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/93c29ab5
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/93c29ab5
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/93c29ab5
Branch: refs/heads/master
Commit: 93c29ab5afa628411ddfb18e3faae6ffb3fe7f84
Parents: 52068f1
Author: Andy Seaborne <an...@apache.org>
Authored: Sat Jun 3 23:04:00 2017 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Sat Jun 3 23:04:00 2017 +0100
----------------------------------------------------------------------
jena-arq/src/test/java/org/apache/jena/riot/TestRDFParser.java | 1 -
1 file changed, 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/93c29ab5/jena-arq/src/test/java/org/apache/jena/riot/TestRDFParser.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/test/java/org/apache/jena/riot/TestRDFParser.java b/jena-arq/src/test/java/org/apache/jena/riot/TestRDFParser.java
index 24f5d47..fdb3e21 100644
--- a/jena-arq/src/test/java/org/apache/jena/riot/TestRDFParser.java
+++ b/jena-arq/src/test/java/org/apache/jena/riot/TestRDFParser.java
@@ -168,7 +168,6 @@ public class TestRDFParser {
assertEquals(3, graph.size());
}
-
private static class TestingFactoryRDF extends FactoryRDFStd {
int counter = 0;
@Override
[6/6] jena git commit: JENA-1357: Merge commit 'refs/pull/259/head'
of github.com:apache/jena
Posted by an...@apache.org.
JENA-1357: Merge commit 'refs/pull/259/head' of github.com:apache/jena
This closes #259.
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/e79199a7
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/e79199a7
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/e79199a7
Branch: refs/heads/master
Commit: e79199a7ae2dd045ca038265ff5f1b9dbabdf2cd
Parents: ae82c15 93c29ab
Author: Andy Seaborne <an...@apache.org>
Authored: Sun Jun 4 08:48:22 2017 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Sun Jun 4 08:48:22 2017 +0100
----------------------------------------------------------------------
.../java/org/apache/jena/riot/RDFParser.java | 12 +++++++-----
.../org/apache/jena/riot/RDFParserBuilder.java | 20 ++++++++++++++++++--
.../org/apache/jena/riot/TestRDFParser.java | 11 +++++++++++
.../jena/fuseki/migrate/GraphLoadUtils.java | 8 ++------
.../jena/fuseki/migrate/GraphLoadUtils.java | 5 +----
5 files changed, 39 insertions(+), 17 deletions(-)
----------------------------------------------------------------------
[5/6] jena git commit: JENA-1355: Merge commit 'refs/pull/258/head'
of github.com:apache/jena
Posted by an...@apache.org.
JENA-1355: Merge commit 'refs/pull/258/head' of github.com:apache/jena
This closes #258.
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/ae82c158
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/ae82c158
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/ae82c158
Branch: refs/heads/master
Commit: ae82c1582039314e1290a46ba431feaf7fe666ea
Parents: cc8810d 688006b
Author: Andy Seaborne <an...@apache.org>
Authored: Sun Jun 4 08:38:13 2017 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Sun Jun 4 08:38:13 2017 +0100
----------------------------------------------------------------------
.../java/org/apache/jena/sparql/engine/main/VarFinder.java | 9 +++++++--
.../src/main/java/org/apache/jena/sparql/util/VarUtils.java | 8 +++++++-
.../java/org/apache/jena/sparql/algebra/TestVarFinder.java | 5 +++++
3 files changed, 19 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
[2/6] jena git commit: Add StreamManager support.
Posted by an...@apache.org.
Add StreamManager support.
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/fb95291a
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/fb95291a
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/fb95291a
Branch: refs/heads/master
Commit: fb95291ad471ae1e7fb4c1f3eb77fbe832b57e51
Parents: cc8810d
Author: Andy Seaborne <an...@apache.org>
Authored: Sat Jun 3 22:50:19 2017 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Sat Jun 3 22:50:19 2017 +0100
----------------------------------------------------------------------
.../java/org/apache/jena/riot/RDFParser.java | 12 +++++++-----
.../org/apache/jena/riot/RDFParserBuilder.java | 20 ++++++++++++++++++--
.../org/apache/jena/riot/TestRDFParser.java | 12 ++++++++++++
3 files changed, 37 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/fb95291a/jena-arq/src/main/java/org/apache/jena/riot/RDFParser.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/riot/RDFParser.java b/jena-arq/src/main/java/org/apache/jena/riot/RDFParser.java
index f1c07d3..977789b 100644
--- a/jena-arq/src/main/java/org/apache/jena/riot/RDFParser.java
+++ b/jena-arq/src/main/java/org/apache/jena/riot/RDFParser.java
@@ -75,6 +75,8 @@ public class RDFParser {
private final String content;
private final InputStream inputStream;
private final Reader javaReader;
+ private final StreamManager streamManager;
+
private final HttpClient httpClient;
private final Lang hintLang;
private final Lang forceLang;
@@ -159,8 +161,9 @@ public class RDFParser {
return RDFParserBuilder.create().source(input);
}
- /* package */ RDFParser(String uri, Path path, String content, InputStream inputStream, Reader javaReader, HttpClient httpClient, Lang hintLang,
- Lang forceLang, String baseUri, boolean strict, Optional<Boolean> checking, boolean resolveURIs, boolean canonicalLiterals, IRIResolver resolver, FactoryRDF factory,
+ /* package */ RDFParser(String uri, Path path, String content, InputStream inputStream, Reader javaReader, StreamManager streamManager,
+ HttpClient httpClient, Lang hintLang, Lang forceLang, String baseUri, boolean strict,
+ Optional<Boolean> checking, boolean resolveURIs, boolean canonicalLiterals, IRIResolver resolver, FactoryRDF factory,
ErrorHandler errorHandler, Context context) {
int x = countNonNull(uri, path, content, inputStream, javaReader);
if ( x >= 2 )
@@ -176,6 +179,7 @@ public class RDFParser {
this.content = content;
this.inputStream = inputStream;
this.javaReader = javaReader;
+ this.streamManager = streamManager;
this.httpClient = httpClient;
this.hintLang = hintLang;
this.forceLang = forceLang;
@@ -324,9 +328,7 @@ public class RDFParser {
urlStr = StreamManager.get(context).mapURI(urlStr);
in = HttpOp.execHttpGet(urlStr, null, httpClient, null);
} else {
- // StreamManager and Locators, based on urlStr.
- StreamManager sMgr = StreamManager.get(context);
- in = sMgr.open(urlStr);
+ in = streamManager.open(urlStr);
}
if ( in == null )
throw new RiotNotFoundException("Not found: "+urlStr);
http://git-wip-us.apache.org/repos/asf/jena/blob/fb95291a/jena-arq/src/main/java/org/apache/jena/riot/RDFParserBuilder.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/riot/RDFParserBuilder.java b/jena-arq/src/main/java/org/apache/jena/riot/RDFParserBuilder.java
index 4824387..ed1ca7b 100644
--- a/jena-arq/src/main/java/org/apache/jena/riot/RDFParserBuilder.java
+++ b/jena-arq/src/main/java/org/apache/jena/riot/RDFParserBuilder.java
@@ -33,6 +33,7 @@ import org.apache.jena.graph.BlankNodeId;
import org.apache.jena.graph.Graph;
import org.apache.jena.riot.lang.LabelToNode;
import org.apache.jena.riot.system.*;
+import org.apache.jena.riot.system.stream.StreamManager;
import org.apache.jena.riot.web.HttpNames;
import org.apache.jena.sparql.core.DatasetGraph;
import org.apache.jena.sparql.util.Context;
@@ -69,6 +70,7 @@ public class RDFParserBuilder {
// The not reusable sources.
private InputStream inputStream;
private Reader javaReader = null;
+ private StreamManager streamManager = null;
// HTTP
private Map<String, String> httpHeaders = new HashMap<>();
@@ -198,6 +200,16 @@ public class RDFParserBuilder {
this.javaReader = reader;
return this;
}
+
+ /**
+ * Set the StreamManager to use when opening a URI (including files by name, but not by {@code Path}).
+ * @param streamManager
+ * @return this
+ */
+ public RDFParserBuilder streamManager(StreamManager streamManager) {
+ this.streamManager = streamManager;
+ return this;
+ }
private void clearSource() {
this.uri = null;
@@ -458,9 +470,13 @@ public class RDFParserBuilder {
if ( path == null && baseUri == null && uri != null )
baseUri = uri;
+ StreamManager sMgr = streamManager;
+ if ( sMgr == null )
+ sMgr = StreamManager.get(context);
+
// Can't build the profile here as it is Lang/conneg dependent.
- return new RDFParser(uri, path, content, inputStream, javaReader, client,
- hintLang, forceLang,
+ return new RDFParser(uri, path, content, inputStream, javaReader, sMgr,
+ client, hintLang, forceLang,
baseUri, strict, checking, resolveURIs, canonicalLiterals,
resolver, factory$, errorHandler$, context);
}
http://git-wip-us.apache.org/repos/asf/jena/blob/fb95291a/jena-arq/src/test/java/org/apache/jena/riot/TestRDFParser.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/test/java/org/apache/jena/riot/TestRDFParser.java b/jena-arq/src/test/java/org/apache/jena/riot/TestRDFParser.java
index 52f74c6..24f5d47 100644
--- a/jena-arq/src/test/java/org/apache/jena/riot/TestRDFParser.java
+++ b/jena-arq/src/test/java/org/apache/jena/riot/TestRDFParser.java
@@ -33,6 +33,8 @@ import org.apache.jena.graph.Node;
import org.apache.jena.riot.lang.LabelToNode;
import org.apache.jena.riot.system.ErrorHandlerFactory;
import org.apache.jena.riot.system.FactoryRDFStd;
+import org.apache.jena.riot.system.stream.LocatorFile;
+import org.apache.jena.riot.system.stream.StreamManager;
import org.apache.jena.sparql.graph.GraphFactory;
import org.junit.Test;
@@ -157,6 +159,16 @@ public class TestRDFParser {
assertEquals(3, graph.size());
}
+ @Test
+ public void source_streamManager() {
+ StreamManager sMgr = new StreamManager();
+ sMgr.addLocator(new LocatorFile(DIR)) ;
+ Graph graph = GraphFactory.createGraphMem();
+ RDFParser.create().streamManager(sMgr).source("file:data.rdf").forceLang(Lang.TTL).parse(graph);
+ assertEquals(3, graph.size());
+ }
+
+
private static class TestingFactoryRDF extends FactoryRDFStd {
int counter = 0;
@Override
[3/6] jena git commit: Use RDFParser+streamManager().
Posted by an...@apache.org.
Use RDFParser+streamManager().
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/52068f1f
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/52068f1f
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/52068f1f
Branch: refs/heads/master
Commit: 52068f1fb7bcf9f5369b2f88ac1b165a01eae931
Parents: fb95291
Author: Andy Seaborne <an...@apache.org>
Authored: Sat Jun 3 22:54:58 2017 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Sat Jun 3 22:54:58 2017 +0100
----------------------------------------------------------------------
.../java/org/apache/jena/fuseki/migrate/GraphLoadUtils.java | 8 ++------
.../java/org/apache/jena/fuseki/migrate/GraphLoadUtils.java | 5 +----
2 files changed, 3 insertions(+), 10 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/52068f1f/jena-fuseki1/src/main/java/org/apache/jena/fuseki/migrate/GraphLoadUtils.java
----------------------------------------------------------------------
diff --git a/jena-fuseki1/src/main/java/org/apache/jena/fuseki/migrate/GraphLoadUtils.java b/jena-fuseki1/src/main/java/org/apache/jena/fuseki/migrate/GraphLoadUtils.java
index 3ccc9c1..3f226b0 100644
--- a/jena-fuseki1/src/main/java/org/apache/jena/fuseki/migrate/GraphLoadUtils.java
+++ b/jena-fuseki1/src/main/java/org/apache/jena/fuseki/migrate/GraphLoadUtils.java
@@ -19,13 +19,12 @@
package org.apache.jena.fuseki.migrate;
-import org.apache.jena.atlas.web.TypedInputStream ;
import org.apache.jena.fuseki.Fuseki ;
import org.apache.jena.graph.Factory ;
import org.apache.jena.graph.Graph ;
import org.apache.jena.rdf.model.Model ;
import org.apache.jena.rdf.model.ModelFactory ;
-import org.apache.jena.riot.RDFDataMgr ;
+import org.apache.jena.riot.RDFParser;
import org.apache.jena.riot.system.StreamRDF ;
import org.apache.jena.riot.system.StreamRDFLib ;
@@ -65,11 +64,8 @@ public class GraphLoadUtils
// ** Worker.
private static void readUtil(Graph graph, String uri, int limit)
{
- // We need to do this ourselves, not via riot, to use the webStreamManager
StreamRDF sink = StreamRDFLib.graph(graph) ;
sink = new SinkRDFLimited(sink, limit) ;
-
- TypedInputStream input = Fuseki.webStreamManager.open(uri) ;
- RDFDataMgr.parse(sink, input, uri) ;
+ RDFParser.source(uri).streamManager(Fuseki.webStreamManager).parse(sink);
}
}
http://git-wip-us.apache.org/repos/asf/jena/blob/52068f1f/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/migrate/GraphLoadUtils.java
----------------------------------------------------------------------
diff --git a/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/migrate/GraphLoadUtils.java b/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/migrate/GraphLoadUtils.java
index 020065f..4e4c837 100644
--- a/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/migrate/GraphLoadUtils.java
+++ b/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/migrate/GraphLoadUtils.java
@@ -19,7 +19,6 @@
package org.apache.jena.fuseki.migrate;
-import org.apache.jena.atlas.web.TypedInputStream ;
import org.apache.jena.fuseki.Fuseki ;
import org.apache.jena.graph.Factory ;
import org.apache.jena.graph.Graph ;
@@ -65,10 +64,8 @@ public class GraphLoadUtils
// ** Worker.
private static void readUtil(Graph graph, String uri, int limit)
{
- // We need to do this ourselves, not via riot, to use the webStreamManager
StreamRDF sink = StreamRDFLib.graph(graph) ;
sink = new StreamRDFLimited(sink, limit) ;
- TypedInputStream input = Fuseki.webStreamManager.open(uri) ;
- RDFParser.source(input).base(uri).parse(sink);
+ RDFParser.source(uri).streamManager(Fuseki.webStreamManager).parse(sink);
}
}