Author: andy
Date: Thu Aug 7 11:03:27 2014
New Revision: 1616470
URL: http://svn.apache.org/r1616470
Log:
Add GraphVew.createUnionGraph
Modified:
jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/core/GraphView.java
jena/trunk/jena-arq/src/test/java/com/hp/hpl/jena/sparql/core/AbstractTestGraphOverDataset.java
jena/trunk/jena-arq/src/test/java/com/hp/hpl/jena/sparql/core/TestDatasetGraphViewGraphs.java
Modified:
jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/core/GraphView.java
URL:
http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/core/GraphView.java?rev=1616470&r1=1616469&r2=1616470&view=diff
==============================================================================
---
jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/core/GraphView.java
(original)
+++
jena/trunk/jena-arq/src/main/java/com/hp/hpl/jena/sparql/core/GraphView.java
Thu Aug 7 11:03:27 2014
@@ -30,7 +30,6 @@ import com.hp.hpl.jena.graph.TripleMatch
import com.hp.hpl.jena.graph.impl.GraphBase ;
import com.hp.hpl.jena.shared.JenaException ;
import com.hp.hpl.jena.shared.PrefixMapping ;
-import com.hp.hpl.jena.shared.impl.PrefixMappingImpl ;
import com.hp.hpl.jena.sparql.SystemARQ ;
import com.hp.hpl.jena.util.iterator.ExtendedIterator ;
import com.hp.hpl.jena.util.iterator.WrappedIterator ;
@@ -63,6 +62,9 @@ public class GraphView extends GraphBase
public static GraphView createNamedGraph(DatasetGraph dsg, Node graphIRI)
{ return new GraphView(dsg, graphIRI) ; }
+ public static GraphView createUnionGraph(DatasetGraph dsg)
+ { return new GraphView(dsg, Quad.unionGraph) ; }
+
// If inherited.
protected GraphView(DatasetGraph dsg, Node gn) {
this.dsg = dsg ;
@@ -91,7 +93,7 @@ public class GraphView extends GraphBase
@Override
protected PrefixMapping createPrefixMapping() {
// TODO Unsatisfactory - need PrefixMap support by DSGs then PrefixMap
-> PrefixMapping
- return new PrefixMappingImpl() ;
+ return dsg.getDefaultGraph().getPrefixMapping() ;
}
@Override
@@ -105,10 +107,10 @@ public class GraphView extends GraphBase
@Override
protected ExtendedIterator<Triple> graphBaseFind(Node s, Node p, Node o) {
- Node g = graphNode(gn) ;
- Iterator<Triple> iter = GLib.quads2triples(dsg.find(g, s, p, o)) ;
if ( Quad.isUnionGraph(gn) )
return graphUnionFind(s, p, o) ;
+ Node g = graphNode(gn) ;
+ Iterator<Triple> iter = GLib.quads2triples(dsg.find(g, s, p, o)) ;
return WrappedIterator.createNoRemove(iter) ;
}
Modified:
jena/trunk/jena-arq/src/test/java/com/hp/hpl/jena/sparql/core/AbstractTestGraphOverDataset.java
URL:
http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/test/java/com/hp/hpl/jena/sparql/core/AbstractTestGraphOverDataset.java?rev=1616470&r1=1616469&r2=1616470&view=diff
==============================================================================
---
jena/trunk/jena-arq/src/test/java/com/hp/hpl/jena/sparql/core/AbstractTestGraphOverDataset.java
(original)
+++
jena/trunk/jena-arq/src/test/java/com/hp/hpl/jena/sparql/core/AbstractTestGraphOverDataset.java
Thu Aug 7 11:03:27 2014
@@ -50,7 +50,6 @@ public abstract class AbstractTestGraphO
private static Node gn2 = SSE.parseNode("<g2>") ;
private static Node gn3 = SSE.parseNode("<g3>") ;
private static Node gnNotSuchGraph = SSE.parseNode("<NoSuchGraph>") ;
-
protected abstract Graph makeNamedGraph(DatasetGraph dsg, Node gn) ;
protected abstract Graph makeDefaultGraph(DatasetGraph dsg) ;
Modified:
jena/trunk/jena-arq/src/test/java/com/hp/hpl/jena/sparql/core/TestDatasetGraphViewGraphs.java
URL:
http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/test/java/com/hp/hpl/jena/sparql/core/TestDatasetGraphViewGraphs.java?rev=1616470&r1=1616469&r2=1616470&view=diff
==============================================================================
---
jena/trunk/jena-arq/src/test/java/com/hp/hpl/jena/sparql/core/TestDatasetGraphViewGraphs.java
(original)
+++
jena/trunk/jena-arq/src/test/java/com/hp/hpl/jena/sparql/core/TestDatasetGraphViewGraphs.java
Thu Aug 7 11:03:27 2014
@@ -18,13 +18,11 @@
package com.hp.hpl.jena.sparql.core;
+import org.apache.jena.atlas.iterator.Iter ;
import org.junit.Test ;
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.sparql.core.DatasetGraphFactory ;
-import com.hp.hpl.jena.sparql.core.GraphView ;
import com.hp.hpl.jena.sparql.sse.SSE ;
/** Directly call the view mechanism */
@@ -63,4 +61,21 @@ public class TestDatasetGraphViewGraphs
assertEquals(baseDSG, gv.getDataset()) ;
assertEquals(gn1, gv.getGraphName()) ;
}
+
+ @Test public void graphDSG_view_union_2()
+ {
+ Graph g = GraphView.createUnionGraph(baseDSG) ;
+ assertTrue(g instanceof GraphView) ;
+ long x = Iter.count(g.find(null,null,null)) ;
+ assertEquals(2, x) ;
+ }
+
+ @Test public void graphDSG_view_union_3()
+ {
+ Graph g = GraphView.createUnionGraph(baseDSG) ;
+ assertEquals(2, g.size()) ;
+ }
+
+
+
}