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/08 14:38:22 UTC
[4/9] jena git commit: JENA-1074: Use DatasetGraph.findNG for dynamic
union graph .find.
JENA-1074: Use DatasetGraph.findNG for dynamic union graph .find.
Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/462fe53a
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/462fe53a
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/462fe53a
Branch: refs/heads/master
Commit: 462fe53a8fbac8770471251be676a050d29a4d1a
Parents: c25cbd8
Author: Andy Seaborne <an...@apache.org>
Authored: Sun Jun 4 09:43:25 2017 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Sun Jun 4 09:43:25 2017 +0100
----------------------------------------------------------------------
.../org/apache/jena/sparql/graph/GraphUnionRead.java | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jena/blob/462fe53a/jena-arq/src/main/java/org/apache/jena/sparql/graph/GraphUnionRead.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/graph/GraphUnionRead.java b/jena-arq/src/main/java/org/apache/jena/sparql/graph/GraphUnionRead.java
index a14a9c8..fa4115e 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/graph/GraphUnionRead.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/graph/GraphUnionRead.java
@@ -19,6 +19,7 @@
package org.apache.jena.sparql.graph ;
import java.util.Collection ;
+import java.util.Iterator;
import java.util.function.Consumer ;
import org.apache.jena.atlas.iterator.Iter ;
@@ -78,6 +79,14 @@ public class GraphUnionRead extends GraphBase {
@Override
protected ExtendedIterator<Triple> graphBaseFind(Triple m) {
+ if ( graphs == null ) {
+ // This produces unique quads with the same graph node,
+ // hence the triples are distinct.
+ Iterator<Quad> qIter = dataset.findNG(Quad.unionGraph, Node.ANY, Node.ANY, Node.ANY);
+ Iterator<Triple> tIter = Iter.map(qIter, quad->quad.asTriple());
+ return WrappedIterator.createNoRemove(tIter) ;
+ }
+ // Only certain graphs.
IteratorConcat<Triple> iter = new IteratorConcat<>() ;
forEachGraph((g) -> iter.add(g.find(m))) ;
return WrappedIterator.createNoRemove(Iter.distinct(iter)) ;
@@ -103,7 +112,7 @@ public class GraphUnionRead extends GraphBase {
@Override
public void performAdd(Triple t) {
- throw new AddDeniedException("GraphUnionRead::performAdd - read-only graph") ;
+ throw new AddDeniedException("GraphUnionRead::performAdd - Read-only graph") ;
}
@Override